Some sanoid packages (e.g. on Ubuntu 26.04) don't ship /etc/sanoid, so the config template failed with 'Destination directory does not exist'. Create the directory explicitly, and copy the packaged sanoid.defaults.conf into it (sanoid requires it beside sanoid.conf) so the first timer run succeeds. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| ansible | ||
| stacks | ||
| README.md | ||
platform-infra
Host baseline and platform services as code.
ansible/ — Phase 1 host baseline ✅
Idempotent Ubuntu 24.04 host config. See ansible/README.md for how to run it.
Roles: base (packages, timezone, unattended-upgrades) → zfs (pool on a
dedicated disk + platform datasets) → docker (Engine + Compose, data-root on
ZFS, zfs storage driver) → firewall (nftables inbound + container SMTP egress
block) → ssh_hardening (key-first SSH, sftponly group).
Planned (later phases)
- Phase 2 base compose projects: Traefik, shared MariaDB, Forgejo + registry, Prometheus/Grafana/Loki, Uptime-Kuma.
- Phase 5 Ansible: automysqlbackup, ZFS snapshot/
sendjobs.