Single compose file for Coolify: MariaDB, Redis, idempotent site creation, migrations on redeploy, SERVICE_URL_FRONTEND_8080 routing, and Forgejo Actions readiness validation vendored from production-ci-readiness skill.
1.9 KiB
1.9 KiB
Production ERPNext on Coolify
Validated Docker Compose stack for ERPNext on Coolify, derived from frappe/frappe_docker.
Repository: https://git.aexoradao.com/epistemophiliac/production-erpnext
Quick start (Coolify)
- New Resource → Docker Compose
- Git repository:
https://git.aexoradao.com/epistemophiliac/production-erpnext - Compose file:
docker-compose.yml - Set environment variables from
example.env(at minimumDB_PASSWORD,SITE_NAME,ADMIN_PASSWORD) - Assign your domain to service
frontend, port8080 - Deploy — first boot creates the site and installs ERPNext (~5–15 minutes)
Login: user Administrator, password = ADMIN_PASSWORD.
What this stack includes
| Service | Role |
|---|---|
db |
MariaDB 11.8 |
redis-cache / redis-queue |
Cache and job queue |
configurator |
One-shot bench config |
create-site |
Idempotent site + ERPNext install |
migrator |
bench migrate on redeploy |
backend |
Gunicorn API |
frontend |
Nginx (port 8080) |
websocket |
Socket.IO realtime |
queue-short / queue-long / scheduler |
Background workers |
CI
Forgejo Actions runs on every push/PR to main:
scripts/ci/ci-readiness.sh— secrets, docs, compose checksscripts/ci/validate-docker-compose.sh— Coolify compose rules +docker compose config
Run locally:
make ci
Requirements
- Coolify server with 4 GB+ RAM (8 GB recommended)
- Domain DNS pointing to your Coolify proxy
SITE_NAMEandFRAPPE_SITE_NAME_HEADERmust match the Coolify domain
Documentation
License
Compose and docs: MIT. ERPNext/Frappe images: see upstream licenses.