services: postgres: image: postgres:16-alpine container_name: metadata-postgres environment: POSTGRES_USER: metadata POSTGRES_PASSWORD: metadata POSTGRES_DB: metadata ports: - "5432:5432" volumes: - postgres_data:/var/lib/postgresql/data - ./migrations:/docker-entrypoint-initdb.d:ro - ./postgresql.conf:/etc/postgresql/postgresql.conf:ro command: postgres -c config_file=/etc/postgresql/postgresql.conf healthcheck: test: ["CMD-SHELL", "pg_isready -U metadata -d metadata"] interval: 5s timeout: 5s retries: 5 volumes: postgres_data: