# NONCANONICAL MANUAL RECOVERY FIXTURE ONLY. # The supervisor-owned PostgreSQL under D:/truf/runtime/postgres is authoritative. name: truf-noncanonical-recovery services: postgres-noncanonical-recovery: profiles: ["noncanonical-manual-recovery"] image: postgres:16 container_name: truf-postgres-noncanonical-recovery restart: "no" environment: POSTGRES_DB: ${TRUF_POSTGRES_DB:-truf} POSTGRES_USER: ${TRUF_POSTGRES_USER:-truf} POSTGRES_PASSWORD: ${TRUF_POSTGRES_PASSWORD:?set TRUF_POSTGRES_PASSWORD in .env.postgres} PGDATA: /var/lib/postgresql/data/pgdata ports: - "127.0.0.1:${TRUF_DOCKER_POSTGRES_PORT:?set an explicit unused noncanonical recovery port}:5432" volumes: - D:/truf/runtime/postgres-docker-noncanonical:/var/lib/postgresql/data - D:/truf/runtime/postgres-backups:/backups command: - postgres - -c - wal_compression=on - -c - max_connections=${TRUF_POSTGRES_MAX_CONNECTIONS:-100} - -c - shared_buffers=${TRUF_POSTGRES_SHARED_BUFFERS:-512MB} - -c - effective_cache_size=${TRUF_POSTGRES_EFFECTIVE_CACHE_SIZE:-2GB} - -c - checkpoint_timeout=${TRUF_POSTGRES_CHECKPOINT_TIMEOUT:-15min} - -c - log_min_duration_statement=${TRUF_POSTGRES_LOG_MIN_DURATION_STATEMENT:-2000} healthcheck: test: ["CMD-SHELL", "pg_isready -U ${TRUF_POSTGRES_USER:-truf} -d ${TRUF_POSTGRES_DB:-truf}"] interval: 10s timeout: 5s retries: 10 start_period: 20s