1 hour ago · Tech · hide · 0 comments

This post is mostly a note for myself, but maybe it can be of use for others. I just need to write this down before I forget and spend time relearning it over and over. This is how I set up new self-hosted applications on my home server. The gist of it is per-app Linux users with user level Systemd services that run containerized apps. This guide presupposes that you have an Ubuntu Server or equivalent system with Systemd and Docker installed, and an HTTP reverse proxy like Caddy (highly recommended, it's great).First set up the user account. Each app should have its own user account to create a layer of separation between them.sudo useradd -m my_app The default shell is sh and that's terrible. Zsh would be nice but I can't be bothered to configure it. I can live with Bash.sudo chsh my_app -s $(which bash) Since this is an app user without a password, it's not logged in — in fact no one can log in. By default, Systemd services don't start until the user is logged in. Let's make them…

No comments yet. Log in to reply on the Fediverse. Comments will appear here.