Recently, I’ve found myself walking several friends through what is essentially the same basic setup:
- Install Ubuntu server
 - Install Docker
 - Configure Tailscale
 - Configure Dockge
 - Set up automatic updates on Ubuntu/Apt and Dockge/Docker
 - Self-host a few web apps, some publicly available, some on the Tailnet.
 
After realizing that this setup is generally pretty good for relative newcomers to self-hosting and is pretty stable (in the sense that it runs for a while and remains up-to-date without much human interference) I decided that I should write a few blog posts about how it works so that other people can set it up for themselves.
As of right now, there’s:
- An introduction (with Ubuntu basics)
 - Tailscale setup
 - Optional Docker Explainer
 - Dockge setup with watchtower for automatic updates
 - MicroBin as a first self-hosted webapp
 
Coming soon:
- Immich
 - Backups with Syncthing
 - Jellyfin
 - Elementary monitoring with Homepage
 - Cloudflare Tunnels
 
Constructive feedback is always appreciated.
EDIT: Forgot to mention that I am planning a backups article


Something really fun I found out recently, when my friend lost all access to his system except for a single WebDAV share by accidentally turning off all his remote admin access:
If you write “b” to /proc/sysrq-trigger, it will immediately reboot the system (like holding down the reset button, so inherently a bit dangerous).
He was running Nephele with / mounted as the share, so luckily he just uploaded that file with a single “b” in it, and all his remote admin stuff came back up after the reboot.
that’s horrible and funny at the same time.
I will assume they fixed that vuln later
That’s not a vulnerability. That’s intended and desired behavior. It was really useful in this case too.
I should mention that the WebDAV share is password protected, so only he has access to do that.
ok, a backdoor then. can they overwrite any file with it?
It’s their machine. It’s a front door.