Commit graph

5 commits

Author SHA1 Message Date
Brian Pooe
1815beadf4 refactor: restructure docs, sync stacks with Caddyfile, harden compose templates
- Add compose stacks for apps already proxied by Caddy: bento-pdf,
  it-tools, paperless-ngx, and beszel-hub (with Makefile targets)
- Remove the unused Vault stack and the drawio Caddyfile block
- Fix Caddyfile gramps upstream to port 80 to match the compose file
- Bring immich and gramps-web up to the shared template pattern
  (no-new-privileges, log rotation, memory limits, healthchecks)
- Single-quote vaultwarden SSO_AUDIENCE_TRUSTED so regex values like
  ^\d{18}$ render as valid YAML
- Move root docs into kebab-case topic folders, rebuild the docs index
  to cover every doc, and fix all broken links
2026-07-03 17:45:16 +02:00
Brian Pooe
34da2eb196 Document deployment lessons from arr-stack LXC build
Four issues encountered during the arr-stack LXC 101 deployment that were not
covered or not clear enough in existing docs:

PROXMOX-NVIDIA-LXC.md — expanded Section 4 into four explicit sub-steps:
  4a: copy installer into LXC via pct push (it lives on the Proxmox host)
  4b: install userspace libs with --no-kernel-module then run ldconfig
  4c: install Container Toolkit (must come after libs, not before)
  4d: switch runtime mode auto→legacy with clear explanation of why CDI fails
      in an LXC even after the libraries are installed

TROUBLESHOOTING.md — new section 5c for the stale gluetun namespace error:
  "joining network namespace of container: No such container"
  Cause: gluetun recreated with new container ID, qbittorrent holds old ID
  Fix: docker rm -f qbittorrent && docker compose up -d qbittorrent
  Renumbered old 5c (HTTPS 502) to 5d

arr-stack README.md — AirVPN preshared key warning in the Installation section:
  AirVPN generates per-server preshared keys; the built-in airvpn provider
  selects a server dynamically so the key never matches → silent VPN failure.
  Documents when and how to use VPN_SERVICE_PROVIDER=custom with a pinned server.

DEPLOYMENT.md — two new sections:
  Section 9: Set a Static IP — via Proxmox .conf net0 line, not inside the LXC
  Section 10: Rename a Container (VMID change) — lvrename + conf file swap

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-20 15:44:30 +02:00
Brian Pooe
8b546ac123 Support Gluetun custom provider and document NVIDIA legacy mode for LXC
- Add optional WIREGUARD_PUBLIC_KEY, WIREGUARD_ENDPOINT_IP, WIREGUARD_ENDPOINT_PORT
  to gluetun template so custom provider renders cleanly without manual patching
- Make SERVER_COUNTRIES optional (:-) so re-renders don't fail for custom provider
- Document the required mode = "legacy" change in /etc/nvidia-container-runtime/config.toml
  for NVIDIA Container Toolkit in a privileged LXC; the default "auto" CDI mode fails
  until userspace libraries are installed and the mode is explicitly set to legacy

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-20 15:20:54 +02:00
Brian Pooe
7dd49a94ab Streamline documentation for privileged LXC and GPU support 2026-06-16 18:01:02 +02:00
Brian Pooe
a8c22c8267 Integrate NVIDIA GPU passthrough for Proxmox 9 and arr-stack 2026-06-16 17:15:53 +02:00