# CluPilot — answers for an unattended install. # # scp this to the new server as /root/clupilot.env # chmod 600 /root/clupilot.env # bash install.sh --env-file /root/clupilot.env # # Keep the master copy in your password manager, NOT in the repository. # After a successful install the working values live in /opt/clupilot/.env, # so this file can be shredded: shred -u /root/clupilot.env # ── Required ──────────────────────────────────────────────────────────────── GIT_TOKEN= # Gitea token with read access to the repo APP_DOMAIN=app.clupilot.com # customer portal WWW_DOMAIN=www.clupilot.com # marketing site WS_DOMAIN=ws.clupilot.com # websockets (Reverb) ADMIN_DOMAIN=admin.clupilot.com # operator console — must NOT resolve publicly ADMIN_EMAIL= ADMIN_NAME=Administrator ADMIN_PASSWORD= # at least 12 characters # ── Needed before the platform can actually do business ───────────────────── # Without these the install still succeeds; the features stay dark. HETZNER_DNS_TOKEN= # no token → no customer or host DNS names CLUPILOT_DNS_ZONE=clupilot.com STRIPE_KEY= # pk_… publishable STRIPE_SECRET= # sk_… secret STRIPE_WEBHOOK_SECRET= # whsec_… per endpoint, differs test/live MAIL_MAILER=smtp # until this is set, mail only goes to the log MAIL_HOST= MAIL_PORT=587 MAIL_USERNAME= MAIL_PASSWORD= MAIL_FROM_ADDRESS=noreply@clupilot.com # Private key used to onboard Proxmox hosts. Put the key file on the server # first (chmod 600) and point at it — a PEM does not fit in a .env line. CLUPILOT_SSH_KEY_PATH=/opt/clupilot/secrets/proxmox_ed25519