version: '3.8' services: budminder: image: ghcr.io/sirbusta/budminder:${BUDMINDER_VERSION:-latest} ports: - "8080:8080" environment: - BUDMINDER_PORT=8080 - BUDMINDER_DB_DRIVER=postgres - BUDMINDER_DB_HOST=postgres - BUDMINDER_DB_PORT=5432 - BUDMINDER_DB_USER=${BUDMINDER_DB_USER:-isley} - BUDMINDER_DB_PASSWORD=${BUDMINDER_DB_PASSWORD:?Set BUDMINDER_DB_PASSWORD in .env} - BUDMINDER_DB_NAME=${BUDMINDER_DB_NAME:-isleydb} - BUDMINDER_SESSION_SECRET=${BUDMINDER_SESSION_SECRET:-} depends_on: postgres: condition: service_healthy volumes: - isley-uploads:/app/uploads restart: unless-stopped deploy: resources: limits: memory: 512M cpus: '1.0' postgres: image: postgres:16.8-alpine environment: - POSTGRES_DB=${BUDMINDER_DB_NAME:-isleydb} - POSTGRES_USER=${BUDMINDER_DB_USER:-isley} - POSTGRES_PASSWORD=${BUDMINDER_DB_PASSWORD:?Set BUDMINDER_DB_PASSWORD in .env} volumes: - postgres-data:/var/lib/postgresql/data restart: unless-stopped healthcheck: test: ["CMD-SHELL", "pg_isready -U ${BUDMINDER_DB_USER:-isley} -d ${BUDMINDER_DB_NAME:-isleydb}"] interval: 10s timeout: 5s start_period: 30s retries: 5 deploy: resources: limits: memory: 256M cpus: '0.5' volumes: postgres-data: isley-uploads: