A mess.
Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
Resources:
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Pi4 with 2TB SSD running:
- Portainer
- Calibre
- qBittorrent
- Kodi
HDMI cable straight to the living room Smart TV (which is not connected to the internet).
Other devices access media (TV shows, movies, books, comics, audiobooks) using VLC DLNA. Except for e-readers which just use the Calibre web UI.
Main router is flashed with OpenWrt and running DNS adblocker. Ethernet running to 2nd router upstairs and to main PC. Small WiFi repeater with ethernet in the basement. It's not a huge house, but it does have old thick walls which are terrible for WiFi propogation.
Bad. I have a Raspberry Pi 4 hanging from a HDMI cable going up to a projector, then have a 2TB SSD hanging from the Raspberry Pi. I host Nextcloud and Transmission on my RPi. Use Kodi for viewing media through my projector.
I only use the highest of grade when it comes to hardware
Case: found in the trash
Motherboard: some random Asus AM3 board I got as a hand-me down.
CPU: AMD FX-8320E (8 core)
RAM: 16GB
Storage: 5x2tb hdds + 128gb SSD and a 32GB flash drive as a boot device
That's it... My entire "homelab"
Beautiful. 🫠
1) DIY PC (running everything)
- MSI Z270-A PRO
- Intel G3930
- 16GB DDR4
- ATX PSU 550W
- 250GB SSD for OS
- 500GB SSD for data
- 12TB HDD for backup + media
2) Raspberry pi 4 4GB (running 2nd pihole instance)
I have 5 servers in total. All except the iMac are running Alpine Linux.
Internet
Ziply fiber 100mb small business internet. 2 Asus AX82U Routers running in AiMesh.
Rack
Raising electronics 27U rack
N3050 Nuc's
One is running mailcow, dnsmasq, unbound and the other is mostly idle.
iMac
The iMac is setup by my 3d printers. I use it to do slicing and I run BlueBubbles on it for texting from Linux systems.
Family Server
Hardware
- I7-7820x
- Rosewill rackmount case
- Corsair water cooler
- 2 4tb drives
- 2 240gb ssd
- Gigabyte motherboard
Mostly doing nothing, currently using it to mine Monero.
Main Cow Server
Hardware
- R7-3900XT
- Rosewill rackmount case
- 3 18tb drives
- 2 1tb nvme
- Gigabyte motherboard
Services
- ZFS 36TB Pool
- Secondary DNS Server
- NFS (nas)
- Samba (nas)
- Libvirtd (virtual macines)
- forgejo (git forge)
- radicale (caldav/carddav)
- nut (network ups tools)
- caddy (web server)
- turnserver
- minetest server (open source blockgame)
- miniflux (rss)
- freshrss (rss)
- akkoma (fedi)
- conduit (matrix server)
- syncthing (file syncing)
- prosody (xmpp)
- ergo (ircd)
- agate (gemini)
- chezdav (webdav server)
- podman (running immich, isso, peertube, vpnstack)
- immich (photo syncing)
- isso (comments on my website)
- matrix2051 (matrix to irc bridge)
- peertube (federated youtube alternative)
- soju (irc bouncer)
- xmrig (Monero mining)
- rss2email
- vpnstack
- gluetun
- qbittorrent
- prowlarr
- sockd
- sabnzbd
Internet:
- 1G fiber
Router:
- N100 with dual 2.5G nics
Lab:
- 3x N100 mini PCs as k8s control plane+ceph mon/mds/mgr
- 4x Aoostar R7 "NAS" systems (5700u/32G ram/20T rust/2T sata SSD/4T nvme) as ceph OSDs/k8s workers
Network:
- Hodge podge of switches I shouldn't trust nearly as much as I do
- 3x 8 port 2.5G switches (1 with poe for APs)
- 1x 24 port 1G switch
- 2x omada APs
Software:
- All the standard stuff for media archival purposes
- Ceph for storage (using some manual tiering in cephfs)
- K8s for container orchestration (deployed via k0sctl)
- A handful of cloud-hypervisor VMs
- Most of the lab managed by some tooling I've written in go
- Alpine Linux for everything
All under 120w power usage
- An HP ML350p w/ 2x HT 8 core xeons (forget the model number) and 256GB DDR3 running Ubuntu and K3s as the primary application host
- A pair of Raspberry Pi's (one 3, one 4) as anycast DNS resolvers
- A random minipc I got for free from work running VyOS as by border router
- A Brocade ICX 6610-48p as core switch
Hardware is total overkill. Software wise everything is running in containers, deployed into kubernetes using helmfile, Jenkins and gitea
- Pico psu
- Asrock n100m
- Eaton3S mini UPS
- 250gb OS Sata SSD
- 4x sata 4t SSD's
- Pcie sata splitter
All in a small PC Case
sever is running YunoHost
At home - Networking
- 10Gbps internet via Sonic, a local ISP in the San Francisco Bay Area. It's only $40/month.
- TP-Link Omada ER8411 10Gbps router
- MikroTik CRS312-4C+8XG-RM 12-port 10Gbps switch
- 2 x TP-Link Omada EAP670 access points with 2.5Gbps PoE injectors
- TP-Link TL-SG1218MPE 16-port 1Gbps PoE switch for security cameras (3 x Dahua outdoor cams and 2 x Amcrest indoor cams). All cameras are on a separate VLAN that has no internet access.
- SLZB-06 PoE Zigbee coordinator for home automation - all my light switches are Inovelli Blue Zigbee smart switches, plus I have a bunch of smart plugs. Aqara temperature sensors, buttons, door/window sensors, etc.
Home server:
- Intel Core i5-13500
- Asus PRO WS W680M-ACE SE mATX motherboard
- 64GB server DDR5 ECC RAM
- 2 x 2TB Solidigm P44 Pro NVMe SSDs in ZFS mirror
- 2 x 20TB Seagate Exos X20 in ZFS mirror for data storage
- 14TB WD Purple Pro for security camera footage. Alerts SFTP'd to offsite server for secondary storage
- Running Unraid, a bunch of Docker containers, a Windows Server 2022 VM for Blue Iris, and an LXC container for a Bo gbackup server.
For things that need 100% reliability like emails, web hosting, DNS hosting, etc, I have a few VPSes "in the cloud". The one for my emails is an AMD EPYC, 16GB RAM, 100GB NVMe space, 10Gbps connection for $60/year at GreenCloudVPS in San Jose, and I have similar ones at HostHatch (but with 40Gbps instead of 10Gbps) in Los Angeles.
I've got a bunch of other VPSes, mostly for https://dnstools.ws/ which is an open-source project I run. It lets you perform DNS lookup, pings, traceroutes, etc from nearly 30 locations around the world. Many of those are sponsored which means the company provides them for cheap/free in exchange for a backlink.
This Lemmy server is on another GreenCloudVPS system - their ninth birthday special which has 9GB RAM and 99GB NVMe disk space for $99 every three years ($33/year).
A 13-year-old former gaming computer, with 30TB storage in raid6 that runs *arrs, sabnzbd, and plex. Everything managed by k3s except plex.
Also, 3-node digital ocean k8s cluster which runs services that don't need direct access to the 30TB of storage, such as: grocy, jackett, nextcloud, a SOLID server, and soon a lemmy instance :)
The Lemmy instance might need access to large storage.
My instance's image cache is like 230GB. Plus a bunch more for the db. Can confirm storage is needed.
(unrelated question 😶 - anyone running pictrs 0.5 on local storage happily?)
Thanks for the heads up.
I plan on using digital ocean's Spaces (s3-alike) where possible and also it's intended to be a personal instance, at least to start - just for me to federate with others and subscribe to my communities. Given that, do you think it'll still use much disk (block device) storage?
Might be time to familiarize myself with DO's disk pricing...
https://pixelfed.social/p/thejevans/664709222708438068
EDIT:
Server:
- AMD 5900x
- 64GB RAM
- 2x10TB HDD
- RTX 3080
- LSI-9208i HBA
- 2x SFP+ NIC
- 2TB NVMe boot drive
Proxmox hypervisor:
- TrueNAS VM (HBA PCIe passthrough)
- HomeAssistant VM
- Debian 12 LXC as SSH entrypoint and Ansible controller
- Debian 12 VM with Ansible controlled docker containers
- Debian 12 VM (GPU PCIe passthrough) with Jellyfin and other services that use GPU
- Debian 12 VM for other docker stuff not yet controlled by Ansible and not needing GPU
Router: N6005 fanless mini PC, 2.5Gbit NICs, pfsense
Switch Mikrotik CRS 8-port 2.5Gbit, 2-port SFP+
I have a Lenovo TS140 in the laundry room, i3-4330, 16GB, 2TB of SSD running arch.
In docker I am running:
Plex, Wire guard, Qbittorrent, Pihole, my discord bot, nginx, and Teslamate.
Works great, I'm probably going to swap my gaming rig in (5800x + 3080 12GB) with more RAM to host some AI stuff and the same services.
i got the random Dell SFF optiplex with 16gb of upgraded ram and a i5-4690 sitting at the girlfriend's house because she's the only one with an ISP that still allows public ip's.
It runs Minecraft.
at home i have my old 9yo retired gaming desktop doing seedbox work and mostly just running BOINC to donate compute power to science... and also keep my feet warm lol
yeah. that's it. i really don't do shit even though i totally could.
-
Server - Desktop Tower
- Build - Intel server board & CPU based on old serverbuild naskiller guide
- OS on SSD
- ZFS ON 8 6TB DRIVES, YIELDING ~36TB of storage, recoverable with up to two failed drives
- Runs (via docker)
- Navidrome (webui used daily @ work, dsub on phone, feishin on desktop)
- Jellyfin (used almost exclusively locally on my TV, occasionally to watch with friends on web)
- Nextcloud (used occasionally, mostly backs up password files, etc or to share. Thinking about replacing.)
- QBitTorrent with glutun VPN
- Audiobookshelf - used frequently for audiobooks. Occasionally for podcasts. Often more convenient to use antennapod/pocket casts on phone for active podcasts)
- Kavitas - used seldom. Thinking about stopping. I like using obps on my rooted kindle to access my library.
- Changedetection.io -watch some sites for new products, etc
- Kiwix (local wikipedia copy I use shortcuts in FF locally to search for things)
- Homepage (local links I use on local machines to my services)
- Build - Intel server board & CPU based on old serverbuild naskiller guide
-
Raspberry pi
- Adguard home & unbound - block most garbage for any traffic from my home
Thoughts - I'm considering downsizing. I don't really need all that much space, and it can be a headache at times. With drive replacement costs on top of power (~$320 a year) I consider either going to a vps or downsizing to what could run on a small compute like the n100 or a raspberry pi5, etc.
Look for 5W idle consumption boards + CPU combos which go down to package C6+ state. HardwareLuxx has a spreadsheet with various builds focusing on low power. Sell half your disks, go mirror or Raidz1. Invest the difference in off-site vps and or backup. Storage on any SBC is a big pain and you will hit the sata connector / IO limits very soon.
The small NUC form factors are also fine, but if your problem is power you can go very low with a good approach and the right parts. And you'll make up for any new investments within the first year.
It's a work in progress, but https://wiki.gardiol.org (which is OFC self-hosted)
Anyway, beefy HP laptop with 32gb ram and Xeon CPU to run all services. 3 RAID-1 (Linux sw raid) usb3 volumes to host all services and data.
Two isp's: Vodafone FVA 5G (data capped) for general navigation and Fastweb FTTC (low speed but uncapped) for backup access and torrent/Usenet downloads.
Gentoo Linux all the way and podman, but as much limited as possible: only immich (that's impossible to host on bare metal due to devs questionable choices).
Services: WebDAV/webcal/etc wiki, more stuff, arrs, immich, podfetch, and a few more.
All behind nginx reverse proxy.
99% bare metal.
Self developed simple dashboard
External access via ssh tunnels to vps
A single nuc with I dunno what
Bit of a mess right now . Amd ryzen 5800x with 6800xt , yr gigs of ram. Running Ubuntu 22 . Also have a ps3 and ps4 set up to the main monitor. A second work computer under my desk with both PC's hooked up with a KVM so seamlessly switch between work and gaming.
https://blog.krafting.net/my-first-server-rack/
For a few weeks now, it's been looking like this! (At the bottom there is a complete picture)
Plus a Orange Pi 3 as a DNS/Reverse Proxy server
An old computer running on the top of a shelf that whenever I need to work with a display I have to bring it back down to the floor and borrow a VGA cable from another because the HDMI port is broken.
Oh and it occasionally disconnects itself from the internet.
- Old Gaming Rig - Proxmox
- Nextcloud, Immich, Grafana on VMs
- Old HP ProDesk - FreeIPA
- NAS - TrueNAS Scale
- Couple Laptops - Docker Stuff
- Wireguard, SearXNG, Nginx
- Raspberry Pi 4 - Home Assistant
- Rasberry Pi 3A+ - ntfy Docker
- Very Old Dell - NTP Server
- Qotom PC - OPNsense
- Network Devices - OpenWRT
- Zyxel Wireless APs (3)
- Netgear R7000 (2)
- Zyxel 24 and 8 port Switches
- Gaming Rig - Windows 11 for now
- Playnite, Sunshine, Jellyfin
- Another HP ProDesk hopefully running an email server soon
- UPS
Edit: Formatting
Jesus, you can run more than one piece of software on each bit of hardware....
Why spread out across 12-13 machines? Seems like a huge waste of power, and a whole bunch of extra to maintain.
You're probably right. I mean. I need most of the network devices, and I didn't list everything I am running on each, just big things. I do need to consolidate some if them though. Its been a trip and has made me a better IT though.
Main site:
- 5950X on a GA-AB350-Gaming 3
- 64GB
- 1TB NVMe mirrored
- 24TB RAIDz1, using external USB 3 disks
- Ubuntu LTS
- 700Mbps uplink
- OpenWrt on Pi 4 router
- Home Assistant Yellow
Off site:
- ThinkCentre 715q
- 2400GE
- 8GB
- 256GB NVMe
- 24TB RAIDz1, using external USB 3 disks
- Ubuntu LTS
- 30Mbps uplink
- OpenWrt on Pi 4 router
Syncthing replicates data between the two. ZFS auto snapshots prevent accidental or malicious data loss at each site. Various services are running on both machines. Plex, Wiki.js, OpenProject, etc. Most are run in docker, managed via systemd. The main machine is also used as a workstation as well as games. The storage arrays are ghetto special - USB 3 external disks, some WD Elements, some Seagate in enclosures. I even used to have a 1T, a 3T and a 4T disk in an LVM volume pretending to be an 8T disk in one of the ZFS pools. The next time I have to expand the storage I'll use second hand disks. The 5950X isn't boosting as high as it should be able to on a chipset with PB2, but I got all those cores on a B350 board. 😆 Config management is done with SaltStack.
I have a similar setup. I just recently switched to the ASRock Phantom X570 for $100. It's a fantastic board at that price.
Like a fucked up ACL trying to do a kind of least-priviledged filesystem knowing absolutely nothing.
And 2 NUCs.
Western Digital My Cloud EX2 (Original) for storage
Raspberry Pi 5 for Home Assistant, Navidrome, Jellyfin, Kavita, Immich, Paperless and eventually NextCloud. Though it's being a bastard and won't run right now.
I need to get a Nano Pi to run OPNSense and Pi-Hole and I'll be happy.
NAS with Truenas, built myself:
- Shared storage
- Backups
- Downloaders
And the following in a VM with docker compose:
- TubeArchivist
Separate K8s cluster with Single control pane (2nd hand old small form-factor HP stuff) and 3 Nodes to run more resource intensive stuff that doesn't need to be close to the data source:
- *ARR
HomeAssistant in another 2nd hand HP small form factor box
ThinkPad T450s (my old laptop)
OS: Arch Linux DE: Plasma
Services: Arr stack for gluetun, sonarr, radar and jackets Jellyfin for videos Gonic for audio
All 3 of them are run using docker compose
Proxmox VE on a machine that I got almost for free. Intel i3-4160, 10GB RAM, 240GB SSD for the OS, and a non-redundant 1T HDD for storage. The only things I paid for are a second NIC and an 8GB RAM stick.
PVE is running a pfSense VM, and a bunch of Debian containers:
- Samba
- Jellyfin (still setting it up)
- Twingate Connector
All internet traffic goes through the pfSense VM. Unfortunately the ISP has put me behind CGNAT and disabled bridge mode, so my internet-facing things (mostly Wireguard and SSH) are pretty much crippled. Right now my best no-cost option is to use Twingate, but I don't trust it to handle anything other than SSH.