# PostgreSQL 16 for the Outbox and Inbox. # # logical replication is enabled so the optional Debezium CDC relay can be exercised against the # same database the polling relay uses; the two must produce an identical wire contract. services: postgres: image: postgres:16-alpine container_name: messaging-postgres ports: - "5432:5432" environment: POSTGRES_DB: messaging POSTGRES_USER: messaging POSTGRES_PASSWORD: messaging command: - "postgres" - "-c" - "wal_level=logical" - "-c" - "max_replication_slots=4" - "-c" - "max_wal_senders=4" healthcheck: test: ["CMD-SHELL", "pg_isready -U messaging -d messaging"] interval: 5s timeout: 5s retries: 20