Files
kalendartool/docker-compose.yml

67 lines
1.9 KiB
YAML

# Eigenständiger Betrieb außerhalb von MPM:
# docker compose -f docker-compose.yml up --build
services:
db:
build:
context: .
dockerfile: Dockerfile.postgres
restart: unless-stopped
environment:
POSTGRES_USER: calendar_admin
POSTGRES_PASSWORD: ${CALENDAR_ADMIN_PASSWORD:?CALENDAR_ADMIN_PASSWORD fehlt}
POSTGRES_DB: calendar
CALENDAR_DB_PASSWORD: ${CALENDAR_DB_PASSWORD:?CALENDAR_DB_PASSWORD fehlt}
volumes:
- pgdata:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U calendar_admin -d calendar"]
interval: 5s
timeout: 5s
retries: 10
db-backup:
image: prodrigestivill/postgres-backup-local:16-alpine
restart: unless-stopped
depends_on:
db:
condition: service_healthy
environment:
POSTGRES_HOST: db
POSTGRES_DB: calendar
POSTGRES_USER: calendar_admin
POSTGRES_PASSWORD: ${CALENDAR_ADMIN_PASSWORD:?CALENDAR_ADMIN_PASSWORD fehlt}
SCHEDULE: "@daily"
BACKUP_KEEP_DAYS: 7
BACKUP_KEEP_WEEKS: 4
BACKUP_KEEP_MONTHS: 3
POSTGRES_EXTRA_OPTS: "-Z6"
TZ: Europe/Berlin
volumes:
- pgbackups:/backups
app:
build:
context: .
args:
HUB_BASE_PATH: ${HUB_BASE_PATH:-}
MPM_AUTH_MODE: "false"
restart: unless-stopped
depends_on:
db:
condition: service_healthy
environment:
MPM_AUTH_MODE: "false"
HUB_BASE_PATH: ${HUB_BASE_PATH:-}
SESSION_SECRET: ${SESSION_SECRET:?SESSION_SECRET fehlt}
CALENDAR_DB_PASSWORD: ${CALENDAR_DB_PASSWORD:?CALENDAR_DB_PASSWORD fehlt}
ALLOW_OPEN_REGISTRATION: ${ALLOW_OPEN_REGISTRATION:-true}
SEED_ADMIN_EMAIL: ${SEED_ADMIN_EMAIL:-}
SEED_ADMIN_PASSWORD: ${SEED_ADMIN_PASSWORD:-}
NODE_ENV: production
ports:
- "${APP_PORT:-3000}:3000"
volumes:
pgdata:
pgbackups: