Anyone else have it ? The more work I do setting things up like dockers, reverse proxies, single sign on, etc. the more I want to do it. But I’m running out of ideas of things to host that would actually benefit me. But I have that itch where I want more lol.
So far I have the following: (EDIT: added descriptions for those who aren’t familar with all of it. )
- Caddy - use this primarily as a reverse proxy to access my applications via my domain and outside the house
- Nextcloud - mainly using it for cloud storage but also some of their other apps likes decks and tasks as well as contacts and calendar.
- Memos - simple note taking app similar to twitter but personal.
- Miniflux - rss
- Authentik - sso
- Portainer - web view of dockers and status / health
- KitchenOwl - groceries / recipe management
- Actual - zero budgeting (like YNAB)
- Firefly iii - finances management
- Immich - images / iCloud replacement
- Organizr (barely using it. Trying to think of more use cases) - dashboard of all my services
- Speedtest - runs daily speed tests and monitors.
- Plex - host my media library
- Plex_Debrid / rclone - sync real Debrid with plex.
- rsync to backup data to one onsite and one off site location. Automated backups
- Watchtower automated docker updates
- Home Assistant - home automation
- Home bridge - Apple home automation
- Zigbee2mqtt - manage zigbee smart home devices
- Unifi controller - manage my network
I think that’s everything!
Edit: Thanks for the overwhelming responses! I really appreciate everyone with their opinions. First things first I did get borg setup for both my server and my desktop so thats awesome! I am waiting for response from my backup server admin if they can install rdiff-backup for me so I can utilize that as well for my cloud backups.
Going to take a look at a few other of the many suggestions here! More than a few I like!
Monitoring. Try out Prometheus/InfluxDB and Grafana, throw Loki in there too… It’ll keep you busy for a few days to a week at least.
I did all of that and I just use Netdata now.
Decided to just start with Netdata. Looks interesting! Got it running on my server and desktop.
Wise move, all the default alerts that came preconfigured are such a timesaver. I realise what I needed was alerts and not really visualization.
Right. And it looks so similar to datadog which I already use at work.
PiHole or AdGuard Home, rutorrent, GitLab.
There was a point I had a minimum of one service from each category of the awesome-selfhosted repo. I’ve since scaled down to a more minimal approach, but still enjoy looking for new services to try out.
Monitoring is one that’s interesting, graphs can be fun to look at though, so Grafana for that, and it’s fun for family to see, even if they don’t exactly know what it means, lines and charts are pretty.
I have since setup most of my monitoring to only alert if there is something that is unusual or outside of some threshold. Previously I had it alert me when a process or script had finished, however it was too noisy, and instead now it checks to make sure the script succeeded and if it didn’t to alert me.
Thanks for that link, I had no idea it existed. Great resource to keep on hand!
Yet another note about your list, OP… instead of plain rsync, take a look at rdiff-backup which uses rsync as its backend but it creates incremental backups. Very handy when you made a change a month ago and just noticed a problem! (I actually keep a year’s worth of backups for each of my servers and it’s very easy on the storage space.)
My rsync does do incremental backups. But I will look into rdiff-backup!
Interesting, I wonder if rsync itself has been updated to include this? The whole point of rdiff-backup was to provide a wrapper for rsync to add this functionality. I dunno, I’ve been using it for many years and it’s never let me down.
Hmm now you got me curious lol. I am newer to this so I could totally be wrong. I told it to make logs so I’ll have to check out the logs. I thought I remember it only backing up new / changed data and then deleting deleted data. I’ll have to look into it more !
Maybe we’re talking about different types of ‘recursive’ backups? In the sense I am referring to, it means that I can tell it to recover a specific file from a specific date, and it will provide the file as it appeared on the server on that given date. If I want to know what options I had in fstab on January 1st, I can recover that.
Ohhh yeah we definitely are. I think what you are referring to is like snapshot backups I think. Which you are right I don’t believe rsync can do that without some major tweaking.
Thanks for clarifying now I’ll definitely check it out !
How are you liking KitchenOwl? I saw it in your list and looked it up, definitely seems like something I’ve been wanting for years, but also appearing to be a very new project that still needs a lot of development.
Basically what you said. It seems really cool with a lot of potential. But too early to say. Someone else suggested this I might try : https://davideshay.github.io/groceries/
Someone else mentioned some other grocery / recipe apps on my post but now I can’t find it. I know Nextcloud has one.
I’ve been selfhosting for almost a year, and I’m still on the lookout for anything I can host.
I’ve reached a point where if I don’t have a use for something, i’ll still try to make an unraid template if there isn’t one. Just to install it and try it out. Lol
I need to look into unraid. I always hear people talking about it but haven’t really looked into it.
I would love to self host more but I feel like I don’t have the proper hardware to back it up and I feel like it would take a lot of my free time to manage it properly.
If docker isn’t your thing, you can run multiple virtual machines under KVM and make each service its own separate machine. It really doesn’t take much hardware to get started. If you meant doing system backups, you could always start with building a simple NAS from an old desktop machine, then run a cron job with rdiff-backup to make daily incremental copies of your other servers.
The point is, don’t let old hardware hold you back. I just moved my web servers off of some 20-year-old rack servers earlier this year, it really doesn’t take a lot. Just grab any machine you have laying around and get started. The practice will teach you a lot, and you can then figure out if you need a better system.
I use my old gaming computer, before that I used a raspberry pi. The Pi is sufficient for a lot of things.
Managing the dockers doesn’t take that much effort. Setting things up did take a lot of time, in many small chunks. I never use the :latest tag, and do manual updates. This way things rarely breaks
I also use my old gaming computer! Makes a perfect home server.
Agreed! It has been solid. Though sometimes I want something smaller 🫣 But with room for disks😅
My stuff is hosted on an Intel NUC celeron, an rpi4 and an rpi zero. You don’t need beefy hardware.
I love posts like these just to look for more stuff to host!
My current list -
hex - main server (Intel NUC 8GB) Nginx Proxy Manager (reverse proxy) Dokuwiki Nextcloud (file sync) - also used for the following Bookmarks Contacts Calendar Location tracking Notes Airsonic (music streaming) Audio Bookshelf (audiobook streaming) Calibre-Web (e-books) FreshRSS (RSS reader) Kavita (comics) Batch monitoring scripts N8N (workflow automation) Transmission (bittorrent client) Vaultwarden (password and 2FA sync for Bitwarden) Glances (fancy top replacement) Paperless-ngx (process attachments and scanned documents) Uptime Kuma Dozzle charon - Raspberry PI4 Pi-hole (Ad blocking DNS server) PiVPN (wireguard VPN server) PiAlert (network intrusion detection) Time Machine (backup for MacOS) Borg Server (backup for main server) coeus - Raspberry Pi Zero PiHole
Ooh, self hosted location tracking? Tell me more!
I already run Nextcloud for file sync. One of the apps available in Nextcloud is called PhoneTrack which is a compatible server for collecting and displaying data collected by the owntracks app on my phone. Nextcloud sits behind an nginx reverse proxy
I haven’t tried it on Nextcloud yet but I do this already on home assistant with my girlfriend and I. We can basically replicate the iOS find my app with it.
I personally just started using Owntracks, which is a standalone location tracker. There is also Traccar which I looked into but opted not to make use of.
Some people use it as a Find My replacement, I personally make use of it as a Google Maps Timeline replacement (and have imported my previous data as a result) as well as for Tile tracker location history (which I’ve got custom scripted currently).
As someone else already said, automated backups should be up on the priority list.
But also maybe try out self hosting Lemmy. It’s been a fun little journey and helped me flesh out my Caddy config more than I thought possible.
Interesting. I did self host Lemmy once a few months ago but that was when I was using cloudflare. Maybe this would be a good way to learn more about Caddyfile and tricks.
I’ve been running it behind Cloudflare with no issues. I’m also doing it a completely different way than the official docs and the ubergeek method. Mostly because I have a particular way I do my docker stuff.
Every time something has broken it’s been 100% on me. My favorite way to learn is by breaking things though, so I also have an account on a different instance in case I break mine and have to wait a bit to fix it 😅
Oh yeah 100% I had no problems with the cloudflare tunnel or anything. I just didn’t know much about Lemmy at the time and was having issues federating and that was an older version. I’m definitely going to look into hosting one again for me and my friends and probably mastodon too !
Host a containerized Bitwarden instance.
I’ve considered this. Since I use it. I always read how people say that’s the one thing they rather leave to the pros lol
I disagree, you’ll have your backups, so even if everything breaks you will have a failsafe. If you get compromised it’s still not an issue: Everything server side is encrypted, the safety is in the clients and your master password length.
So, I see no particular differences with other services. Considering I hear of some issues with bitwarden servers that are constantly under attack, selfhosting could even increase the availability.
Yeah that’s a good point. I don’t see why not. Thanks I’ll probably give it a shot.
deleted by creator
I got it working in my local Kubernetes cluster, by writing all the yml files myself. Then realized someone built a Helm chart for it, which is much easier to maintain. The hardest part was generating the TLS cert.
In no specific order
goaccess-for-nginxproxymanager
filebrowser
smokeping
searxng
duplicati
whoogle
nginx-proxy-manager
flaresolverr
linkding
ntfy
librex
shlink
portainer
speedtest-tracker
pihole
unbound
wg-easy
bookstack
memos
epicgames-freegames
mind-reminders
teddit
vikunja
uptime-kuma
Bloben
stash
jackett
gluetun
prowlarr
mstream
jellyseerr
sonarr
nextcloud
qbittorrentvpn
komga
bazarr
duplicati
Tube-archivist
homepage
radarr
picoshare
audiobookshelf
lychee
scrutiny
youtubedl-material
deemix
Jellyfin
Invidious
Wefwef
Serge
Your own Lemmy instance.
A local caching DNS server can be useful and is easy to get set up. And learning about DNS gives you insight into one of the most important pieces of how the internet works. You can go as far as setting up your own root zone which means you have the needed components to run the entire internet (except for the bandwidth it would require).
I don’t see an apache or nginx server in your list, do you host your own websites? Get one of those set up, and then read about LetsEncrypt to creating and managing SSL certs.
There’s just so many other things you can run from home… Chat servers like IRC, instant messager services like XMPP via OpenFire, a local SMTP relay with postfix, file hosting under something like SeaFile. If you have a collection of music files you could even build your own internet radio station.
I’ve been wanting to set up NextCloud on my servers, but I’ve been busy trying to get all the OS upgrades caught up. One of these days…
Caddy is listed instead of Apache or nginx. And it handles all of the SSL on its own.
Ah ok. There’s a ton of stuff on these lists that I’ve never heard of before, and since nobody is adding descriptions for the rest of us who aren’t familiar with the projects, I think there will be a lot of possibilities passed over in this post that might have otherwise been of interest.
I agree with you, I don’t know what a lot of that stuff is.
Yeah I was thinking of people giving me ideas didn’t even cross my mind people would use my list for ideas. Updated!
Didn’t think of that. Most eyes are probably already off this post but I’ll edit it with some descriptions !
Updated my apps to describe what I use them for. But it’s funny you mention this because as I switched away from cloudflare tunnels I was learning how to get all of it working with nginx proxy manager. Took me a while cause im a dns/ssl noob. But I learned a lot and then switched to caddy for its simplicity.
Now a local caching dns server is not something I’ve thought about before and while not something I’d probably need it would be a great learning experience.
I did learn a bit about lets encrypt but happy caddy handles it all for me now. I still need to learn more though because I need to do some tls verification skipping for some of my sites. The other ideas are cool too. Thanks !
There’s a lot of options for local DNS caching. I think one of the easiest is dnsmasq which not only handles dns but also lets you set up a local DHCP service, and will automatically add local machine names to your DNS lookups. I use the DHCP side for my lan and wifi networks, and then put static IPs of my servers into the hosts files on that machine (which dnsmasq also reads) so everything on my network can easily be addressed by name.
One of the benefits of a DNS cache is that it saves the wait time for lookups of sites you frequently visit (although your desktop may already provide this too). Another advantage is using local names when your various services need to reference each other. For instance if you have a database at a given IP, you could add that info to dnsmasq, point all your services to the name, and if you ever need to move the db to a different IP you only have to make one update to tell every other machine where it moved to.
Oh and thanks for updating the app descriptions, gives me more to look through!
Seems like one of the features I read about for Nextcloud was that it could host a Zoom-like video conference… Am I remembering right? I keep thinking of setting that up because our model train club has a lot of older members that can’t attend in person and a paid subscription is out of our range.
I haven’t played with the Nextcloud chat apps yet so not too sure. But I’ve heard a lot of people talk about “Jitsi” as a zoom alternative and planned to look into it.
Thanks for the tip, I’ll check into that!
Start automating your backups / maintenance and orchestrate deployments …
Any guides/resources on how to get started on that? I have backups and could probably get my stuff up and running after some tinkering but I love the idea of some script I can just run on a fresh environment that would bring all my containers up and restore all the data.
My backups are automated via cron jobs and rsync both on and off site. Deployments / maintenance are also partially automated via docker compose files and cron jobs to identify issues with mounts or something and fix and restart.
Any other ideas ?
Borg backup for deduplicated backups
Observability stack?
Also if you’re running out of ideas on what to do, try to Nixify it. Install NixOS, learn modules, maybe make some modules yourself. Fun journey.