services: postgres: image: postgres:latest restart: unless-stopped environment: POSTGRES_DB: postgres POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres volumes: - postgres_data:/var/lib/postgresql healthcheck: test: ["CMD-SHELL", "pg_isready -U postgres -d postgres"] interval: 10s timeout: 5s retries: 10 printer: image: ghcr.io/browserless/chromium:latest restart: unless-stopped ports: - "4000:3000" environment: - HEALTH=true - CONCURRENT=20 - QUEUED=10 - TOKEN=${BROWSERLESS_TOKEN} healthcheck: test: ["CMD-SHELL", 'curl -fsS "http://localhost:3000/pressure?token=${BROWSERLESS_TOKEN}" > /dev/null'] interval: 10s timeout: 5s retries: 10 reactive-resume: image: amruthpillai/reactive-resume:latest # image: ghcr.io/amruthpillai/reactive-resume:latest restart: unless-stopped ports: - "3000:3000" env_file: - .env volumes: # Used when S3 is not configured; keeps uploads persistent - ./data:/app/data depends_on: postgres: condition: service_healthy printer: condition: service_healthy healthcheck: test: ["CMD", "curl", "-f", "http://localhost:3000/api/health"] interval: 30s timeout: 10s retries: 3