Skip to content

Deploy a template

Deploy wizard

Wizard: variables → host → preview → confirm. wireframe

Flow

  1. Catalog → Templates → open a template → Deploy… (or Details → Deploy).
  2. Fill variables (incl. volume mode for storage vars; generate secrets if offered).
  3. Pick a Docker-enabled host (inventory counts shown).
  4. Preview rendered files (secrets masked).
  5. Confirm deploy — blocking wait modal while PiHerder:
  6. writes files over SSH
  7. locks host .env (chmod 600)
  8. runs compose pull + up -d
  9. Desired state Vn stored encrypted in PiHerder.
  10. Post-deploy checklist (manual DNS, first login, …).

Redeploy & ops (deployment page)

Open the deployment for that host+project (/templates/deployments/{id}):

Action Effect
Volumes / storage Change named volume, project folder, or host path without re-wizard
Save & redeploy New config version → write files → compose pull/up (wait modal)
Check drift Compare host compose/.env to desired state; updates drift badge + alert
Import host .env Pull host secrets into PiHerder encrypted store
Apply last known config Re-write stored desired state after host wipe / DR
Restore data Lists matching backup sources → use server Backups dry-run/apply

Post-redeploy banner links to Docker, this deployment, and Audit.
Drift also runs on a schedule (~every 6 hours).

Create / edit a template

  1. Catalog → Templates → + New template or From host… or Edit.
  2. Metadata: slug, name, category, version.
  3. Paste or pull docker-compose.yml; use {{VAR}} placeholders.
  4. Variables as form rows. Types include boolean + volume.
  5. Editor tools:
  6. Scan vars + volumes
  7. Move secrets → .env
  8. Checklist rows for operators.
  9. Savesource=user.

Import zip

Archive with template.yaml + files/. Fully editable after import.

Security settings

Settings → Security policy:

Option Effect
Require 2FA for all users Force 2FA for the whole UI
Require 2FA for template deploy & secrets Operator must have TOTP to confirm deploy or view/edit secrets

Step-up unlock for cleartext secrets: Secrets model.