Files
backend/docker-compose.prod.yml
T

71 lines
2.1 KiB
YAML

services:
backend:
build:
context: .
dockerfile: Dockerfile
restart: unless-stopped
volumes:
- uploads-data:/app/uploads
environment:
DB_HOST: ${DB_HOST:-mysql}
DB_PORT: ${DB_PORT:-3306}
DB_USER: ${DB_USER:-visione}
DB_PASSWORD: ${DB_PASSWORD:-visione}
DB_NAME: ${DB_NAME:-visione}
DB_TIMEOUT: ${DB_TIMEOUT:-30}
MAIL_PROVIDER: ${MAIL_PROVIDER:-resend}
RESEND_API_BASE_URL: ${RESEND_API_BASE_URL:-https://api.resend.com}
RESEND_API_KEY: ${RESEND_API_KEY:-}
MAIL_FROM: ${MAIL_FROM:[email protected]}
CORS_ALLOWED_ORIGIN: ${CORS_ALLOWED_ORIGIN:-http://localhost:3000}
CIE_AUTH_SERVICE_BASE_URL: ${CIE_AUTH_SERVICE_BASE_URL:-http://127.0.0.1:8001}
CIE_AUTH_START_PATH: ${CIE_AUTH_START_PATH:-/visione/start}
CIE_AUTH_SHARED_SECRET: ${CIE_AUTH_SHARED_SECRET:-change-me-for-local-dev}
CIE_AUTH_STATE_TTL_MINUTES: ${CIE_AUTH_STATE_TTL_MINUTES:-10}
CIE_AUTH_DEFAULT_FRONTEND_REDIRECT_URI: ${CIE_AUTH_DEFAULT_FRONTEND_REDIRECT_URI:-http://localhost:3000/auth/cie/callback}
expose:
- "5555"
depends_on:
mysql:
condition: service_healthy
mysql:
image: mysql:8.4
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: "${MYSQL_ROOT_PASSWORD:-root}"
MYSQL_DATABASE: "${DB_NAME:-visione}"
MYSQL_USER: "${DB_USER:-visione}"
MYSQL_PASSWORD: "${DB_PASSWORD:-visione}"
expose:
- "3306"
volumes:
- mysql-data:/var/lib/mysql
healthcheck:
test: ["CMD-SHELL", "mysqladmin ping -h 127.0.0.1 -u$${MYSQL_USER} -p$${MYSQL_PASSWORD} --silent"]
interval: 5s
timeout: 5s
retries: 20
start_period: 20s
mailpit:
image: axllent/mailpit:latest
restart: unless-stopped
expose:
- "1025"
- "8025"
phpmyadmin:
image: phpmyadmin:latest
restart: unless-stopped
expose:
- "80"
environment:
PMA_HOST: mysql
PMA_USER: ${DB_USER:-visione}
PMA_PASSWORD: ${DB_PASSWORD:-visione}
volumes:
mysql-data:
uploads-data: