Files
moyosapp_beta.0.0.3/docker-compose.yml
2026-01-15 16:19:14 +02:00

62 lines
1.7 KiB
YAML

services:
# Next.js Application
app:
build:
context: .
dockerfile: Dockerfile
restart: unless-stopped
ports:
- "3000:3000"
environment:
- NODE_ENV=production
- DATABASE_URL=${DATABASE_URL}
- RUNTIME_DATABASE_URL=${RUNTIME_DATABASE_URL:-${DATABASE_URL}}
- SHADOW_DATABASE_URL=${SHADOW_DATABASE_URL}
- SESSION_SECRET=${SESSION_SECRET}
- CSRF_SECRET=${CSRF_SECRET}
- ADMIN_PASSWORD=${ADMIN_PASSWORD}
- NEXT_PUBLIC_APP_URL=${NEXT_PUBLIC_APP_URL:-http://localhost:3000}
- SMTP_HOST=${SMTP_HOST}
- SMTP_PORT=${SMTP_PORT}
- SMTP_USER=${SMTP_USER}
- SMTP_PASS=${SMTP_PASS}
- ENABLE_NOTIFICATIONS=${ENABLE_NOTIFICATIONS:-true}
- ENABLE_ANALYTICS=${ENABLE_ANALYTICS:-false}
healthcheck:
test: ["CMD", "node", "-e", "require('http').get('http://localhost:3000/api/health', (r) => {process.exit(r.statusCode === 200 ? 0 : 1)})"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
# Uncomment if using local postgres (for development)
# depends_on:
# - postgres
# - redis
# Local PostgreSQL (optional - use external Supabase in production)
# postgres:
# image: postgres:14-alpine
# restart: always
# environment:
# - POSTGRES_USER=moyos
# - POSTGRES_PASSWORD=M@h@li@1121
# - POSTGRES_DB=database
# ports:
# - "5440:5432"
# volumes:
# - postgres_data:/var/lib/postgresql/data
# Redis for rate limiting (optional)
# redis:
# image: redis:7-alpine
# restart: always
# ports:
# - "6390:6379"
# volumes:
# - redis_data:/data
# command: redis-server --appendonly yes
# volumes:
# postgres_data:
# redis_data: