# OAMC Turnierauswertung — lokaler/kleiner Produktivbetrieb per Container. # docker compose up -d (Build + Start) # docker compose exec app oamc-turnier seed # # Fuer "docker repo": das app-Image separat bauen und pushen: # docker build -t /oamc-turnier:0.1.0 -f docker/Dockerfile . # docker push /oamc-turnier:0.1.0 services: db: image: postgres:17-alpine environment: POSTGRES_USER: oamc POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-oamc} POSTGRES_DB: oamc volumes: - db_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U oamc"] interval: 5s timeout: 3s retries: 20 restart: unless-stopped app: build: context: . dockerfile: docker/Dockerfile image: oamc-turnier:${OAMC_VERSION:-0.1.0} depends_on: db: condition: service_healthy environment: OAMC_DATABASE_URL: postgresql+psycopg://oamc:${POSTGRES_PASSWORD:-oamc}@db:5432/oamc OAMC_SECRET_KEY: ${OAMC_SECRET_KEY:?bitte in .env setzen} OAMC_INGEST_API_KEYS: ${OAMC_INGEST_API_KEYS:-dev-ingest-key} OAMC_ENV: ${OAMC_ENV:-prod} OAMC_PUBLIC_BASE_URL: ${OAMC_PUBLIC_BASE_URL:-http://localhost} OAMC_SEED_ON_START: ${OAMC_SEED_ON_START:-0} volumes: - uploads:/var/oamc/uploads restart: unless-stopped nginx: image: nginx:1.27-alpine depends_on: [app] ports: - "${OAMC_HTTP_PORT:-8080}:80" volumes: - ./docker/nginx.conf:/etc/nginx/conf.d/default.conf:ro restart: unless-stopped volumes: db_data: uploads: