Fluxheim/文件/Systemd 與容器

Systemd 與容器

原生主機使用 systemd,隔離部署使用 rootless container。

Rootless Podman 執行

podman run --name fluxheim --replace \
  -p 8080:8080 \
  -v ./fluxheim.toml:/etc/fluxheim/fluxheim.toml:ro \
  -v ./site:/srv/site:ro \
  -v fluxheim-cache:/var/cache/fluxheim \
  ghcr.io/valkyoth/fluxheim:v1.8.0

容器掛載

掛載Recommended mode
設定只讀 bind mount。
靜態內容只讀 bind mount。
ACME 狀態持久可寫 volume。
Disk cache使用容量符合 cache policy 的持久 writable volume。每個 storage-bin replica 應配置自己的 local 或 RWO volume;只有在跨 node locking 已驗證,且 orchestration 層強制 single-writer 時,才使用共享 RWX storage。
金鑰使用 container secret 或 credentials directory,不要使用公共檔案。

Systemd 流程

fluxheim --config /etc/fluxheim/fluxheim.toml --check-config
sudo systemctl restart fluxheim
sudo systemctl status fluxheim
journalctl -u fluxheim -n 100 --no-pager

零停機升級

使用 systemd 通訊端啟用後,Fluxheim 在驗證新程序並等待既有連線處理完成期間,仍能維持對外監聽通訊端可用。直接發布主機連接埠的容器無法在監聽不中斷的情況下替換,因此需要穩定的前端 Proxy、負載平衡器或容器協調平台。

閱讀完整的升級規範

生產檢查清單

  • 固定 release version 或 image digest。
  • 以 read-only 掛載設定和內容。
  • Keep ACME and cache state on persistent volumes.
  • 按計劃執行的 profile 驗證設定。
  • 變更流量前準備好 health checks 和 rollback commands。
繁體中文