1.4 KiB
1.4 KiB
CI/CD (Gitea Actions) – Auto Deploy
Goal
Every push to main should:
- sync the repo to the production server
- build Docker images on the server
- restart containers
- run health checks
This repository uses a remote SSH deployment from Gitea Actions.
Required Gitea Actions Secrets
Configure these in Gitea: Repo → Settings → Actions → Secrets
Deployment (SSH)
DEPLOY_HOST– production server IP/hostnameDEPLOY_USER– SSH user (e.g.administrator)DEPLOY_PATH– absolute path where the repo is synced on the server (e.g./home/administrator/pounce)DEPLOY_SSH_KEY– private key for SSH accessDEPLOY_SUDO_PASSWORD– sudo password forDEPLOY_USER(used non-interactively)
App Secrets (Backend)
Used to generate /data/pounce/env/backend.env on the server.
DATABASE_URLSECRET_KEYSMTP_PASSWORDSTRIPE_SECRET_KEYSTRIPE_WEBHOOK_SECRETGOOGLE_CLIENT_SECRETGH_OAUTH_SECRETCZDS_USERNAMECZDS_PASSWORD
Server Requirements
sudoinstalleddockerinstalledDEPLOY_USERmust be able to run docker viasudo(pipeline usessudo -S docker ...)
Notes
- Secrets are written to
/data/pounce/env/backend.envon the server with restricted permissions. - Frontend build args are supplied in the workflow (
NEXT_PUBLIC_API_URL,BACKEND_URL).
Trigger
This file change triggers CI.