services: openvox: image: ghcr.io/openvoxproject/openvoxserver:latest # image: ghcr.io/openvoxproject/openvoxserver:8.8.0-latest container_name: openvox hostname: puppet ports: - "8140:8140" # Puppet Server API - "8141:8141" # Puppet Server HTTP - "8142:8142" # Puppet Server HTTPS volumes: - ./config/puppet/puppet.conf:/etc/puppetlabs/puppet/puppet.conf - ./code:/etc/puppetlabs/code - ca_ssl_data:/etc/puppetlabs/puppet/ssl - ./ca_data:/etc/puppetlabs/puppetserver/ca environment: - OPENVOXSERVER_ENVIRONMENT_TIMEOUT=10 # - CA_ENABLED="true" networks: - openvox_network postgres: image: postgres:latest # image: postgres:16.2 container_name: postgres hostname: postgres environment: POSTGRES_USER: openvox POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_DB: openvoxdb POSTGRES_EXTENSIONS: pg_trgm volumes: - postgres_data:/var/lib/postgresql # - ./config/postgres/postgresql.conf:/etc/postgresql/postgresql.conf # - ./config/postgres/pg_hba.conf:/etc/postgresql/pg_hba.conf - ./config/postgres/script:/docker-entrypoint-initdb.d ports: - "5432:5432" networks: - openvox_network healthcheck: test: ["CMD-SHELL", "pg_isready -U openvox -d openvoxdb"] interval: 5s timeout: 3s retries: 5 start_period: 10s openvoxdb: image: ghcr.io/openvoxproject/openvoxdb:latest # image: ghcr.io/openvoxproject/openvoxdb:8-latest container_name: openvoxdb environment: OPENVOXSERVER_HOSTNAME: puppet OPENVOXSERVER_PORT: 8140 OPENVOXDB_POSTGRES_HOSTNAME: postgres OPENVOXDB_POSTGRES_PORT: 5432 OPENVOXDB_POSTGRES_DATABASE: openvoxdb OPENVOXDB_POSTGRES_USER: openvox OPENVOXDB_POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} networks: - openvox_network volumes: - openvoxdb_data:/var/lib/openvoxdb depends_on: postgres: condition: service_healthy healthcheck: test: ["CMD-SHELL", "PGPASSWORD=${POSTGRES_PASSWORD} pg_isready -h postgres -p 5432 -U openvox"] interval: 5s timeout: 5s retries: 5 start_period: 30s volumes: postgres_data: openvoxdb_data: ca_ssl_data: networks: openvox_network: driver: bridge