--- services: gitea: depends_on: postgres: condition: service_healthy odoo: depends_on: postgres: condition: service_healthy odoo-init: depends_on: postgres: condition: service_healthy postgres: image: postgres:18-alpine container_name: postgres restart: on-failure volumes: - pgdata:/var/lib/postgresql - ./scripts/postgres/init-db:/docker-entrypoint-initdb.d:ro environment: POSTGRES_USER: ${POSTGRES_ADMIN_USER} POSTGRES_PASSWORD: ${POSTGRES_ADMIN_PASSWORD} # Gitea dedicated DB and user (defaults provided if env vars are not set) GITEA_DB: ${GITEA_DB:-giteadb} GITEA_DB_USER: ${GITEA_DB_USER:-gitea} GITEA_DB_PASSWORD: ${GITEA_DB_PASSWORD:-giteapass} # Odoo dedicated DB and user (defaults provided if env vars are not set) ODOO_DB: ${ODOO_DB:-odoodb} ODOO_DB_USER: ${ODOO_DB_USER:-odoo} ODOO_DB_PASSWORD: ${ODOO_DB_PASSWORD:-odoopass} healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_ADMIN_USER}"] interval: 5s timeout: 5s retries: 5 volumes: pgdata: