services: web: build: context: . dockerfile: Dockerfile.web ports: - "8000:80" volumes: - pdf-uploads:/app/uploads - pdf-results:/app/results depends_on: postgres: condition: service_healthy env_file: .env restart: unless-stopped postgres: image: postgres:16-alpine volumes: - pg-data:/var/lib/postgresql/data - ./db/init.sql:/docker-entrypoint-initdb.d/init.sql environment: POSTGRES_DB: ${DB_NAME:-pdf_checker} POSTGRES_USER: ${DB_USER:-pdf_checker} POSTGRES_PASSWORD: ${DB_PASSWORD:-dev_password} healthcheck: test: ["CMD-SHELL", "pg_isready -U ${DB_USER:-pdf_checker}"] interval: 10s timeout: 3s retries: 3 restart: unless-stopped volumes: pdf-uploads: pdf-results: pg-data: