A simple question to this community, what are you self-hosting? It’s probably fun to hear from each-other what services we are running.
Please mention at least the service (e.g. e-mail) and the software (e.g. postfix). Extra bonus points for also mentioning the OS and/or hardware (e.g. Linux Distribution, raspberry pi, etc) you are running on.
How has been your experience with code-server so far? I am interested in self-hosting it
I host:
Fedi servers
- lemmy.world
- mastodon.world
- calckey.world
- pool.social
- musicworld.social
- akkoma.nl
- ruud.social
- fotofed.nl
- fediland.nl
- blog.mastodon.world
- play-my.video
Software I use
- Nginx Proxy Manager
- Portainer
- Kimai
- Xwiki (3 of them)
- Cryptpad
- Grafana
- Hedgedoc
- Matrix/Synapse
- Thelounge
- Vaultwarden
- Gitea
- Nextcloud
- Paperless-ngx
- Zabbix
- Zammad
Probably forgot some…
My long and mostly complete list:
- Audiobookshelf (GH)
- Using for audiobooks. Ebooks, comics, and podcast support in early stages.
- Authelia (GH)
- Using for two-factor authentication in front of all of my services. Critical infrastructure.
- Bazarr (GH)
- Using for automated subtitle management. Have not needed to rely on it much.
- Code-Server (GH)
- Using for a plethora of things. I could write an entire post on this alone.
- Courier
- Using (occasionally) for package-tracking from various carriers.
- EmulatorJS
- Using for retro-emulation.
- Gitea (GH) x2
- Using as a git repo server, package repository, and for CI/CD automation. Is critical infrastructure in my lab. Could also write an entire post on this one.
- Headscale with Headscale-UI. Tailscale clients on various VMs LXCs, etc.
- Using to securely network with my remote servers.
- Homepage
- Using as a “single-pane-of-glass” to get an overview of service health with links to the various services.
- Invidious
- Using in-place of YouTube.
- IT-Tools (GH)
- Using for the myriad of various useful tools it offers.
- Jellyfin (GH)
- My media player of choice. Using for movies and television, but supports music, ebooks, and photos in addition.
- Kopia Server (GH)
- Using for data backups to my Minio instance on local NAS and Wasabi. Simple, fast, and reliable.
- Librespeed (GH)
- Using for the occasional speedtest to my remote servers.
- Matrix stack using Conduit back end and Element-Web front end
- Federated Discord essentially. Using as a private instance for friends and family.
- Minio
- Using primarily as a gateway to storing backups, also serves git-lfs for Gitea.
- N8N (GH)
- Using for home-automation, backing up my Reddit saved posts to a database, deal-alerts, and part of a CI/CD pipeline.
- NTFY (GH)
- Using for infrastructure notifications mostly. Very simple and versatile alerting solution.
- NZBGet
- Using for getting “usenet articles”.
- Paperless-NGX
- Using for document archival. Important receipts, documentation, letters, etc. live here.
- Portainer (GH) with multiple agents on VM’s LXCs and VPSs
- High level management of my various docker containers.
- Prowlarr
- Using to provide torznab API to websites that dont natively have it. Integrates with Radarr and Sonarr
- Radarr (GH)
- Using for movie management.
- Radicale
- Using for contacts and calendar server.
- Raneto (GH)
- Using as a knowledge base. Lab documentation, lists, recipes, lots of things live here. Using with with code-server and Gitea.
- Readarr (GH)
- Using for book management
- Recyclarr (GH)
- Using for Radar and Sonarr to sync search terms for their automations. Very useful, hard to summarize.
- Requestrr
- Using (very rarely) as a requests bot for Radarr and Sonarr.
- SFTP-Go
- Using mostly in-place of Nextcloud. Used to back up phones mostly.
- Shaarli (GH)
- Using as a read-it-later service. Went through lots of these, and Shaarli has been good enough.
- Singlefile-Archive
- A hacky way of presenting pages saved with the singlefile browser extension. Not exactly happy with the solution, but for my ocasional use it does work.
- Sonarr (GH)
- Using as TV series manager
- Speedtest-Tracker (GH)
- Using to get periodic speedtests. Plan to automate results to blast my ISP if my service speed gets too low.
- Traefik (GH) on each seperate host
- Using as a web proxy in front of my various services. Critical infrastructure.
- Transmission (GH)
- Using to get “Linux ISOs”
- Uptime Kuma (GH)
- Using to monitor site and services status along with a few others. Integrated with NTFY for alerts.
- Vaultwarden
- Using as my password manager. Have been using for years, cannot recommend enough.
- A handful of static websites served with NGINX
- The old standby, its been reliable as a webserver.
These services are the result of years of development and administrating my lab and while there is still some cruft, it’s mostly services that I think have real utility.
Edit: Spelling is hard.
That is impressive. For the sake of curiosity, do you have any photos or diagrams you could share?
Hmmm. I don’t have a network/infrastructure diagram or anything yet, but I’ve been meaning to create one. I’ll probably put one together and post more about my setup if there’s any interest. I’ll be sure to tag you when I do. Thanks for the interest!
Tag me as well! I hope to have something with half the functionality of your setup by year’s end.
Fantastic breakdown, thank you!
That was a fantastic list thank you!
Did you get a dual nic in the laptop router, or how did you work it?
It’s an older Panasonic ToughBook CF-C2 with an ExpressCard34 slot I’d say circa 2013. I have a gigabit Ethernet adapter jammed in there for WAN. I’ve been using the setup for maybe 8 years and it’s been ultra reliable for me.
Expresscards are an underrated feature of old laptops as a server.
Hi, would it be possible to link to the switch?
Are you concerned about how much power your hardware consumes?
I’m not sure what kind of link would be best, but sure. It’s a Dell PowerConnect-5524. Picked it up from eBay I believe maybe 6 or 7 years ago. Not a particularly great switch, but it was cheap, had plenty of expansion, and some management capabilities. Consumes more power than I’d like though (~20-25w), and doesn’t have some of the advanced capabilities of some newer switches.
For power consumption, yes. I prefer to use power efficient devices. The big standout in my lab is the NAS and Dell switch. The NAS is running very little, but still idles at ~100-110w so I’m looking at lowering that usage with a motherboard / processor swap in the future. It’s using a server board and xenon processor which aren’t really built for power efficiency. Swapping this to a recent consumer-grade board with an i3 would likely address this, but depending on chipset I’ll probably loose ECC ram compatibility. I’d like to swap the switch to a more modern microtik 10g unit I think, with a large dumb swich; but I haven’t settled on the idea for sure.
Thanks!
Mind blown! Thanks so much for the comprehensive list!! 🙏
Hi, would it be possible to link to the switch?
Are you concerned about how much power your hardware consumes?
- Audiobookshelf (GH)
As an offensive security worker… I can’t help but read people listing out their attack surface 😂
Oh my jesus, does this thread really have 400+ comments
Edit: respectfully as an atheist
Currently all LAN only, still in the experimental stage finding out what’s useful/preferable to me and what I want to keep:
KEEPING
Pi-Hole - ad/malware/tracker blocking
Portainer - Easy Docker
Syncthing - Sync folders between devices
Planka - Kanban board
I.T. Tools - Handy I.T. Tools
Bookstack - Personal documentation
Mealie - Recipe manager/meal planner
Jellyfin + usual accompaniments - Media Management
Navidrome - Music library
Changedetection - Stock monitoring
Gotify - For push notifications from other apps
Filebrowser
That Word Game ;)UNDECIDED (may swap for alternatives or just remove)
Organizr - Homepage
Jump - Homepage
Homepage - Yup, another homepage!
Linkding - Bookmarks
Shiori - Pocket replacement
Etebase - CalDAV & CardDAV
Whoogle - Google without the crap
Photoprism - Photo management
Libreddit (not being used now!)
QBittorrent - for Linux ISOs
Uptime-Kuma (for when I do open a few services to family)
Ryot (beta) “Roll Your Own Tracker” - Media TrackerPLANNING TO ADD
Reverse-proxying (likely NPM) + Security (Fail2Ban, Autheilia?)
Audiobooks
Comic book management
Translation service
Document manager
Home Assistant on its own Pi4 when I can get hold of one- Lemmy Instance
- VaultWarden - Password manager
- Jellyfin - Movies/TV Shows
- Roon / Roon ARC - Music
- OneDev - Used to use Gitlab but couldn’t afford the self-hosted instance anymore and want the paid features, which this mostly has.
- Dokuwiki - Used to use as a wiki, switched to…
- Trilium - Similar to Obsidian but open source.
- Kavita - Comics/books
- TubeArchivist - YouTube video downloader/viewer
- PodGrab - Podcast manager
- Wallabag - Website article saver/bookmarker etc. If anyone has a better suggestion for FOSS bookmark management please let me know!
- Mealie - Recipe manager (grabs recipes from a ton of different sites)
I use TrueNAS Scale for my NAS and Ubuntu server for my VM’s/home server. I probably am forgetting something, but, that’s what’s listed in my Portainer :).
- Matrix Synapse
- Paperless-ngx
- MediaTracker
- Lychee
- Immich
- AudioBookShelf
- Baikal
- Monica
- Nextcloud
- Calibre-web
- Piwigo
- Pinry
- Prosody
- Shaarli
- Wallabag
- mygpodder
- Peertube
- Mealie
- Mastodon
- Firefox sync
- Seafile
- Dokuwiki
- The Lounge
- Redmine
- Gitea
- Castopod
- Portainer
This assortment is run under a combination of Proxmox LXC containers, docker containers, and Yunohost. Mostly I use it to play around, but most are heavily used by my wife and I. I’m planning to rebuild everything and making things more “official”. Looking to convert from a “lab” to actually making it “production” with solid failure routes and backups. I am looking to move anything currently under Yunohost to docker/lxc and to start making use of podman. Recently saw CosmOS and think it might be a good alternative to portainer.
Hardware:
- Node 1: Lenovo m93p tiny with 16GB RAM and 250GB SSD - Proxmox
- Node 2: Lenovo m93p tiny with 16GB RAM and 250GB SSD - Proxmox
- Node 3: Gigabyte Brix with 16GB RAM and 500GB Sata SSD, 128GB m.2 SSD - Proxmox
- Node 4: Trigkey Green G3 with 16GB RAM and 1TB Sata SSD - Proxmox
- TPLink managed switch
- TerraMaster 2-bay NAS with 2x 2TB HD (NFS host for containers)
- Synology ds220j NAS with 2x 8TB HD (backup of home desktops, laptops, cell phones, and lab systems)
- Plex and Jellyfin for movies and TV shows. I want to switch from Plex to Jellyfin but it is not quite there yet. It‘s very little effort to keep Jellyfin running in parallel though. I am keeping it around to regularly compare the two and re-evaluate.
- Tube Archivist for archiving and watching YouTube videos.
- Miniflux for reading feeds.
- Nextcloud, mainly for calendars and contacts; occasionally for sharing files with others.
- Syncthing for syncing files.
- Financier for budgeting.
- Paperless-ngx for managing documents.
- Qbittorrent for downloading and sharing Linux ISOs.
- Prowlarr for searching Linux ISOs.
- Copyparty for sharing Linux ISOs with friends.
- Shaarli for saving bookmarks.
- Jekyll for statically generating my personal blog.
- Caddy as HTTP server / reverse proxy for all of the above. Automatically provisions certificates from Let‘s Encrypt.
- PostgreSQL as database for Nextcloud and Miniflux.
- Simple Nixos Mailserver for emails with Postfix, Dovecot and rspamd.
- Dehydrated for getting certificates from Let‘s Encrypt for the mail server.
- Btrbk and Restic for backups.
Most of this stuff runs on my server at home (ASRock J4105-ITX, 8 GB RAM , 250 GB SSD, 18 TB HDD). The mail server and the blog run on a cheap VPS (1 vCPU, 2 GB RAM, 20 GB SSD). Both servers run NixOS.
Another person of culture sharing Linux ISOs ;)
Need to have the infrastructure ready for when those sweet ISOs drop.
- Nextcloud, mainly for calendars and contacts; occasionally for sharing files with others.
- Syncthing for syncing files.
Quick question: have you thought about hosting Radicale and filebrowser instead of NextCloud? I think that would be definetly lighter on your system.
Also: I have read lots of mixed opinions whether mailservers should be selfhosted - what is your take on this? Do you know about problems reaching the big player mailservers?
When I looked around for CalDAV solutions the last time Nextcloud was the only one that allowed me to share calendars with my SO. Nextcloud isn‘t very taxing on my system because it doesn‘t do anything most of the time.
Do you know about problems reaching the big player mailservers?
Honestly, I don‘t know. I have never had a confirmed case of an email being rejected or classified as spam. There were some cases of not getting an answer to an email. But that could also be explained by shitty customer service.
It is tricky to setup everything correctly if you are trying to do it all on your own but SNM holds your hand for setting up DKIM, SPF and DMARC. That‘s where some people may have problems. Also, forget about setting up a mail server at home with any IP address you get from your internet provider.
Self hosting mail servers is possible but I place it in one of those more trouble than it’s worth camps. If you set up your DKIM and SPF records, most places will accept your mail and not flag it as junk. There are always some businesses that are aggressive on anti-spam which won’t accept mail from home ISP ranges. My email at this point is more a notification that I bought something, that a bill is ready or two-factor for logging into someplace. I pay Google to handle my mail and don’t really regret it.
When I looked around for CalDAV solutions the last time, Nextcloud was the only one that allowed me to share calendars with my SO. Nextcloud isn‘t very taxing on my system because it doesn‘t do anything most of the time.
Do you know about problems reaching the big player mailservers?
Honestly, I don‘t know. I have never had a confirmed case of an email being rejected or classified as spam. There were some cases of not getting an answer to an email. But that could also be explained by shitty customer service.
It is tricky to setup everything correctly if you are trying to do it all on your own but SNM holds your hand for setting up DKIM, SPF and DMARC. That‘s where some people may have problems. Also, forget about setting up a mail server at home with any IP address you get from your internet provider.
Ubuntu server(Xeon CPU E5-2650 v4 with 86 GB Ram) running k3s(My home server):
- App-daemon(Used with home assitant for more complicated automation)
- Bazarr
- Browserless(Currently used for rendering js pages for huginn)
- Dpaste
- Filerun
- Homeassistant
- Homer(My dashboard)
- Huginn
- Jellyfin
- Kaizoku(For downloading manga)
- Nzbget
- Nzbhydra
- Ombi
- Paperless
- Photoprism
- Pihole
- Plex
- Prowlarr
- Radarr
- Scrutiny(For checking my drives)
- Sonarr
- Qbittorrent with vpn
- Wiki.js
- Christmas-Community(Wishlist)
- ZwaveJS(For homeassistant)
2 Ubuntu servers running k3s(VPS used for my infrastructure services)
- Keycloak
- Offical docker registry
- Bitwarden
- Gitea
- Headscale
- Healthchecks(For checking backups)
- Uptime-kuma - Hashicorp vault
Infrastructure services runing on all servers
- ArgoCD(For deploying everything on k3s)
- Longhorn(For storage)
- Vault-secrets-operator(For getting secrets from vault into k3s)
- Traefik(My reverse proxy)
Lastly I’m hosting Lemmy on a leftover VPS, that I hadn’t used in a while. Might move to a bigger server though.
miniflux, nitter, seafile on my local RPi4
pondered pixelfed (but they don’t have docker image) and calckey (no arm one)…
Too many things:
Services:
Pihole with Unbound
Matrix
cryptpad
seafile
Vaultwarden
mailcow
pterodactyl running Minecraft, Valheim, and Terraria servers
emby though I am planning the switch to Jellyfin
Paperless-NGX
Photoprism
SearxNG
Wallabag
Ghost
Miniflux
PrivateBin
Calibre-web and Kavita
Nitter and Troddit (for now…)
Home Assistant and Frigate
YOURLS
Code-server
Linkding
Changedetection.io
LanguageTool
Uptime KumaAnd more, but those are what I use the most.
Not much these days…
- Jellyfin - film/tv, both locally and on a seedbox.
- stable-diffusion-webui - self explanatory
- Matrix/synapse - private instant messaging for myself and tech minded friends
- MeTube - web UI for youtube-dl
- Stash - like Jellyfin/Plex but for any adult media you may have (link is SFW).
- Lemmy - only privately just seeing how it all works, I don’t intend to make a public instance.
- A fairly typical LEMP (Ubuntu, Nginx, MariaDB, PHP) stack on my VPS
Stuff I used to use or have at least tried out:
- Plex
- Calibre-web
- Typical LAMP (CentOS, Apache, MySQL, PHP) stack back in the old days (PHP4/5) when I did a bit of web dev.
In various clouds
- Email - Docker Mail Server (Postfix, Dovecot, Rspamd, etc.)
- Reverse Proxy cluster - frp
- This is actually pretty neat. It is basically acting as a self-hosted ngrok, letting me expose all the stuff in my homelab without having to put my home IP out there.
- External Monitoring - Uptime Kuma
- Random sites via cloudflare workers/R2
In my homelab
Infrastructure
- DNS - PiHole fronting local Unbound resolvers
- Load Balancing/Routing - Traefik
- Storage - Gluster exposed via Samba
- I am still searching for the right solution for storage… nothing does what I want. I have been slowly writing my own, but don’t have the time to get it to a point I trust it, haha.
- Custom traefik auto-config clients/server
- Reads labels on containers and announces them to the server that traefik uses for HTTP service discovery
- Custom docker-compose nonsense
- Basically lets me choose where to run docker-compose files in a simple and centralized way, including on multiple machines
- Doesn’t do scheduling/monitoring/etc, just manually setting “this compose should run these machines”
- I got tired of running k8s and nomad.
Services
- Authentication - Authentik
- Media - Jellyfin
- Minecraft
- Password Manager - Vaultwarden
- PKM - DokuWiki
- SCM - Forgejo (a fork of Gitea, which itself is a fork of Gogs)
- Social Media - Lemmy
- Webmail - Snappymail
- Several random little websites
- Many little things I’ve written for myself
Any service that needs non-http traffic pointed at it runs local instances of the frp client to expose that port to the reverse-proxy cluster.
Oh jeez… there’s quite the list. I have a Ceph cluster of 3 nodes with 15x HDD’s and 3 SSD’s… on that cluster I run some VM’s that in turn run a Docker swarm. All Ubuntu 22.04, all commodity hardware. Currently I’m running;
- Portainer to help manage this beast
- NGINX which proxies all my web facing services on multiple websites.
- Wordpress for my personal site which sync my Instagram pictures to it as well
- MariaDB Galera cluster
- Nextcloud for file sharing but also provides lots of plugin services like a password manager, email client and so on
- Photoprism for my photos… I use the Nextcloud client to automatically upload new pics from my phone to Nextcloud then Photoprism is attached to that same library
- OnlyOffice as a plugin to Nextcloud to allow O365-like functionality
- ElasticSearch plugged into Nextcloud for full-text searching
- OpenProject for project management in my own businesses
- Jellyfin and Plex both attached to the same media library
- E-Mail using Docker-Mailserver… so Postfix with a bunch of ancillary tools for 3 domains
- Droppy as a quick-and-dirty file repo for when I need to get files to people easily
- FreePBX (Asterisk) with 4 extensions around the house
- MeshCentral for managing my family’s PC’s and also doing remote tech support for family, friends and customers as necessary
- FOGProject for imaging PC’s and VM’s as necessary
- ReactiveResume
- Docker Registry set up as a caching proxy
- YoutubeDL-Material
- Karaoke Eternal for those nights when you just get drunk enough to karaoke
Then there’s a whole host of ancillary services; BackupPC, Unifi controller container, piHole on a couple of Raspberry Pi’s, ts-dnsserver for internal DNS management… probably a dozen other containers and tools I’m forgetting.
Oh yeah, and a Synology NAS as a backup target :)