a2f3410e42
Add per-site and per-box inventories, consolidate shared network design, and relocate the switch and access-point references under the home site.
2.2 KiB
2.2 KiB
kelder-spoder
The web container for the kelder site: Nextcloud plus an nginx (OpenResty) reverse proxy for the site's services.
- Source:
nixos/boxes/kelder/containers/spoder/ - Host: NixOS container on
kelder - nixpkgs:
mine
Role
- Nextcloud (
nextcloud32) atcloud.hentai.engineer(trusted aliascloud-local.hentai.engineer), SQLite backend, data in/mnt/storage/nextcloud(/mnt/storageis bind-mounted from the host). - nginx reverse proxy (
openresty) terminating TLS for the site's public vhosts, with a wildcard ACME cert forhentai.engineervia Cloudflare DNS. The kelder host forwardshttp/httpsto this container; uploads are unlimited (clientMaxBodySize = 0) for Nextcloud's sake.
Network assignments
See the consolidated network assignments table (this box: kelder-spoder).
Proxy vhosts
All under hentai.engineer, each with a *-local alias:
| vhost | Target | Auth |
|---|---|---|
monitor |
netdata on the kelder host (:19999) |
htpasswd |
kontent |
Jellyfin on kelder-acquisition (:8096, incl. websocket) |
— |
torrents |
Transmission on kelder-acquisition (:9091) |
htpasswd |
jackett |
Jackett on kelder-acquisition (:9117) |
htpasswd |
radarr |
Radarr on kelder-acquisition (:7878) |
htpasswd |
sonarr |
Sonarr on kelder-acquisition (:8989) |
htpasswd |
cloud |
Nextcloud (local) | — |
An init_worker_by_lua timer polls v4.ident.me periodically to track the site's public IP; it
feeds localRedirect rewrites (bounce public-IP clients to the *-local name) that
are currently disabled (commented out — Virgin Media filters DNS answers containing local
IPs, so the split doesn't work as intended).
Networking
internalassignment (namespoder-ctr) on the host'sctrsbridge, MTU 1420.
Notable config files
nixos/boxes/kelder/containers/spoder/default.nix— Nextcloud + ACME.nixos/boxes/kelder/containers/spoder/nginx.nix— reverse proxy vhosts.