Global configuration for home servers
  • Python 35.8%
  • Shell 29.6%
  • CSS 14.2%
  • Makefile 12.9%
  • Less 3.9%
  • Other 3.6%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Laura Powles ccb192f734
All checks were successful
Validate / validate (push) Successful in 43s
Service smoke test / service-smoke (push) Successful in 5m47s
defined the preprod server
2026-08-16 20:16:17 +10:00
.forgejo/workflows fixed a bug in the smoke test 2026-08-16 12:07:56 +10:00
assets switched to a new high-res logo 2026-08-10 14:46:43 +10:00
machines defined the preprod server 2026-08-16 20:16:17 +10:00
scripts defined the preprod server 2026-08-16 20:16:17 +10:00
services defined the preprod server 2026-08-16 20:16:17 +10:00
.gitignore added logo generation using an example from the internet 2026-08-08 19:23:11 +10:00
Makefile defined the preprod server 2026-08-16 20:16:17 +10:00
project.env moved services around and put some into categories 2026-08-16 19:04:09 +10:00
README.md switched over to feru.cafe and mouse.garden 2026-08-03 15:17:26 +10:00
setup.sh extended ci actions 2026-08-15 21:07:36 +10:00

Servers

This is the global configuration for my home servers.

Usage:

  • cd into the project directory.
  • Run ./setup.sh/ once. This will install any necessary dependencies.
  • Run make <machine>, where machine is one of the servers defined in ./machines/. This will generate the compose.yaml file, the .env file, and any necessary secrets (assuming they don't already exist)
  • Check the warnings, and add any remaining secrets that couldn't be generated. At minimum, you will need to manually add ./secrets/tailscale/authkey once per server.
  • Run make up to start the services.

Structure:

  • ./services/ contains docker compose files for various services, as well as any config files that are worth committing to git.
  • ./machines/ contains docker compose files that import & override a number of services, as well as a template .env file that will be populated on generation.
  • ./setup.sh/ is a shell script that will install the docker engine and any other dependencies on a Debian server.

Tailscale Devices

  • mousetrap: The tailnet
  • burrow: Public edge node
  • forge: devops & automation server
  • hoard: cloud storage server
  • lab: test server