Files
mtgonline/docker-compose.dev.yml
T

69 lines
1.6 KiB
YAML

version: '3.8'
services:
postgres:
image: postgres:14-alpine
environment:
POSTGRES_DB: mtgonline
POSTGRES_USER: mtgonline_user
POSTGRES_PASSWORD: mtgonline_password
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U mtgonline_user"]
interval: 10s
timeout: 10s
retries: 5
mtgdata:
image: postgres:14-alpine
environment:
POSTGRES_DB: mtgdata
POSTGRES_USER: mtgonline_user
POSTGRES_PASSWORD: mtgonline_password
ports:
- "5433:5432"
volumes:
- mtgdata_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U mtgonline_user"]
interval: 10s
timeout: 10s
retries: 5
redis:
image: redis:7-alpine
ports:
- "6379:6379"
volumes:
- redis_data:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 10s
retries: 5
backend:
image: mtgonline-backend:latest
ports:
- "5555:8000"
environment:
DATABASE_URL: "postgresql+asyncpg://mtgonline_user:mtgonline_password@postgres:5432/mtgonline"
MTG_DATABASE_URL: "postgresql+asyncpg://mtgonline_user:mtgonline_password@mtgdata:5432/mtgdata"
REDIS_URL: "redis://redis:6379"
depends_on:
postgres:
condition: service_healthy
mtgdata:
condition: service_healthy
redis:
condition: service_healthy
restart: unless-stopped
volumes:
postgres_data:
mtgdata_data:
redis_data: