ariadne/compose.yaml
2026-07-24 05:45:04 +09:00

51 lines
1.5 KiB
YAML

services:
database:
image: postgres:17-alpine
environment:
POSTGRES_DB: ariadne
POSTGRES_USER: ariadne_admin
POSTGRES_PASSWORD: ariadne_admin
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ariadne_admin -d ariadne"]
interval: 2s
timeout: 3s
retries: 15
ports:
- "127.0.0.1:15432:5432"
volumes:
- ariadne-postgres:/var/lib/postgresql/data
- ./deploy/postgres/init:/docker-entrypoint-initdb.d:ro
migrate:
build:
context: .
entrypoint: ["/ariadne-migrate"]
environment:
ARIADNE_ENVIRONMENT: development
ARIADNE_DATABASE_MIGRATION_URL: postgres://ariadne_migrator:ariadne_migrator@database:5432/ariadne?sslmode=disable
ARIADNE_DATABASE_RUNTIME_ROLE: ariadne_runtime
ARIADNE_DATABASE_IDENTITY_ROLE: ariadne_identity
ARIADNE_MIGRATION_LOCK_TIMEOUT: 30s
depends_on:
database:
condition: service_healthy
restart: "no"
server:
build:
context: .
environment:
ARIADNE_ENVIRONMENT: development
ARIADNE_HTTP_ADDRESS: :8080
ARIADNE_DATABASE_URL: postgres://ariadne_runtime:ariadne_runtime@database:5432/ariadne?sslmode=disable
ARIADNE_DATABASE_IDENTITY_URL: postgres://ariadne_identity:ariadne_identity@database:5432/ariadne?sslmode=disable
ARIADNE_DATABASE_RUNTIME_ROLE: ariadne_runtime
ARIADNE_DATABASE_IDENTITY_ROLE: ariadne_identity
depends_on:
migrate:
condition: service_completed_successfully
ports:
- "127.0.0.1:18080:8080"
volumes:
ariadne-postgres: