Setup deploy server (Coolify + workflow Dokploy-style)
Runtime: Coolify su VPS Netcup (server.ezbit.it).
Orchestrazione CI/CD: GitHub Actions + webhook (secrets DOKPLOY_*) — stesso pattern Dokploy + Frappe.
Branch workflow (Odoo.sh)
feature/* → dev (locale Docker) → staging → main| Branch | Deploy | Dominio |
|---|---|---|
dev | make up locale | localhost:8001 |
staging | Coolify + tag :staging | staging-factoryos.ezbit.it |
main | Coolify + tag :main | factoryos.ezbit.it |
Coolify — servizi Docker Compose
- Progetto ez-factoryos, ambienti
stagingeproduction. - Resource Docker Compose con
deploy/compose/server.stack.yml. - Variabili da
.envCoolify (non committare segreti):SITE_NAME,SECRET_KEY,DB_*,CUSTOM_IMAGE,CUSTOM_TAG,TRAEFIK_ROUTER_PREFIX. - Non configurare domini nella UI: routing via label Traefik nel compose (vedi guida Coolify multitenant).
- Volumi persistenti:
sites,db-data,redis-queue-data. - Webhook deploy collegati a GitHub Environments
staging/production.
GitHub Actions
| Workflow | Trigger | Azione |
|---|---|---|
build-image.yml | push dev/staging/main | Build + push GHCR (:staging, :main, :sha-*) |
deploy-staging.yml | push staging | Webhook Coolify staging |
deploy-production.yml | push main | Promote digest + webhook production |
Verifica post-deploy
bash
curl -fsS https://staging-factoryos.ezbit.it/api/method/ping
curl -fsS https://factoryos.ezbit.it/api/method/ping
# atteso: {"message":"pong"}Riferimenti Frappe community
- Coolify production multitenant
- Dokploy development instances
- Coolify installation (frappe_docker pwd.yml)
Vedi anche deploy/dokploy/README.md.