services: postgres: image: postgres:16-alpine environment: POSTGRES_USER: gearbox POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_DB: gearbox volumes: - pgdata:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U gearbox"] interval: 10s timeout: 5s retries: 5 app: image: gearbox:latest environment: DATABASE_URL: postgresql://gearbox:${POSTGRES_PASSWORD}@postgres:5432/gearbox GEARBOX_URL: ${GEARBOX_URL} ports: - "3000:3000" depends_on: postgres: condition: service_healthy volumes: - uploads:/app/uploads volumes: pgdata: uploads: