Collection of quadlets.
I also make use of some compose stacks: compose-bucket.
- Service-based dirs:
actual/,beaver/, etc.<pod>.container: Quadlet unitcontainer-data/: Datacontainer-config/: Config.env: Private vars.env.example: Template
All .container files follow this structure:
[Unit]
[Service]
[Install]
[Container]
# Container properties
ContainerName -> Image -> AutoUpdate -> Pull
# Environment options
Environment vars -> EnvironmentFile
# User options
User -> Group -> UserNS
# Network options
Network -> NetworkAlias -> PublishPort
# Volume binds
Data -> Config -> System files
# Traefik Labels
enable -> rule -> entrypoints -> middlewares -> services
# Glance Labels
name -> icon -> url -> description -> id
See beaver.container for reference.
- Clone repo
- Symlink:
ln -s (pwd) ~/.config/containers/systemd systemctl --user daemon-reload- Copy/edit
.envfrom.env.example
- Start:
systemctl --user start <service>.container - Stop:
systemctl --user stop <service>.container - Status:
systemctl --user status <service>.container - Enable:
systemctl --user enable <service>.container
- Update
.env.examplefiles withqh generate env(quadlet-helper)
- Update Cloudflare IPs in
traefik.yamlwithqh cloudflare run. Automate usingqh cloudflare install. - Update
traefik.yaml.examplefile withqh generate traefik.