services: db: image: postgres:16 container_name: encoach-v4-db restart: unless-stopped environment: POSTGRES_USER: odoo POSTGRES_PASSWORD: odoo POSTGRES_DB: encoach_v2 volumes: - odoo-db-data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U odoo"] interval: 5s timeout: 5s retries: 5 odoo: build: . image: encoach-backend:latest container_name: encoach-v4-odoo restart: unless-stopped depends_on: db: condition: service_healthy ports: - "8069:8069" volumes: - odoo-web-data:/var/lib/odoo - ./odoo-docker.conf:/etc/odoo/odoo.conf:ro # Mount the whole monorepo so both custom addons and OpenEduCat are # available via /mnt/extra-addons (see odoo-docker.conf). - .:/mnt/extra-addons:ro healthcheck: test: ["CMD-SHELL", "curl -fsS http://localhost:8069/api/health || exit 1"] interval: 15s timeout: 5s retries: 10 start_period: 60s volumes: odoo-db-data: odoo-web-data: