Skip to content

Setting up the host

A general philosophical question is often whether to run applications directly on the machine ("bare-metal") or containerized. While both options have their good use-cases, this setup will almost exclusively rely on containetized apps; this means that things to set up and install on the host-machine are mostly general-purpose utilities.

Bare minimum

A minimal working server installation needs at least a user with sudo privileges as well as Docker installed.

Ansible

The full suite of packages and configurations for this setup are defined via Infrastructure-as-Code in form of Ansible playbooks.

For more detailed information on the usage, refer to the setup directory and its own README.

In a nutshell, the provided playbook first runs some roles from ansible-fedora-setup, then some additional tasks.

Defined are, among others, tasks that:

  • installs docker, dockcheck, borg, tailscale
  • sets up firewall and cronjobs
  • enables passwordless sudo
  • disables ssh-password auth
  • sets up zsh shell
  • installs suite of other small utilities

The playbook is tailored to Fedora, but it can certainly be adapted to other distros; another option is using the playbooks as reference and setting the machine up by hand.