frappe_docker/coolify.yaml
2025-08-29 02:12:13 +02:00

80 lines
2 KiB
YAML

# Coolify configuration for ERPNext deployment
# This file provides a simplified configuration for Coolify deployment
version: "3.8"
services:
erpnext:
image: frappe/erpnext:${ERPNEXT_VERSION:-v15.77.0}
restart: unless-stopped
environment:
- DB_HOST=${DB_HOST:-db}
- DB_PORT=${DB_PORT:-3306}
- DB_PASSWORD=${DB_PASSWORD:-123}
- REDIS_CACHE=${REDIS_CACHE:-redis-cache:6379}
- REDIS_QUEUE=${REDIS_QUEUE:-redis-queue:6379}
- SOCKETIO_PORT=9000
- FRAPPE_SITE_NAME_HEADER=${FRAPPE_SITE_NAME_HEADER:-$$host}
volumes:
- sites:/home/frappe/frappe-bench/sites
- logs:/home/frappe/frappe-bench/logs
depends_on:
- db
- redis-cache
- redis-queue
ports:
- "${HTTP_PORT:-8080}:8080"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/api/method/ping"]
interval: 30s
timeout: 10s
retries: 3
db:
image: mariadb:10.6
restart: unless-stopped
environment:
- MYSQL_ROOT_PASSWORD=${DB_PASSWORD:-123}
- MARIADB_ROOT_PASSWORD=${DB_PASSWORD:-123}
volumes:
- db-data:/var/lib/mysql
command:
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci
- --skip-character-set-client-handshake
- --skip-innodb-read-only-compressed
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "--password=$${DB_PASSWORD:-123}"]
interval: 10s
timeout: 5s
retries: 10
redis-cache:
image: redis:6.2-alpine
restart: unless-stopped
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
redis-queue:
image: redis:6.2-alpine
restart: unless-stopped
volumes:
- redis-queue-data:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
volumes:
db-data:
redis-queue-data:
sites:
logs:
networks:
default:
driver: bridge