68 lines
2.0 KiB
YAML
68 lines
2.0 KiB
YAML
|
|
version: '3.9'
|
||
|
|
|
||
|
|
services:
|
||
|
|
orchestrator-db:
|
||
|
|
container_name: {{ customer }}-orchestrator-db
|
||
|
|
image: postgres:16-alpine
|
||
|
|
restart: always
|
||
|
|
environment:
|
||
|
|
POSTGRES_USER: orchestrator
|
||
|
|
POSTGRES_PASSWORD: {{ orchestrator_db_password }}
|
||
|
|
POSTGRES_DB: orchestrator
|
||
|
|
volumes:
|
||
|
|
- {{ customer }}-orchestrator-db:/var/lib/postgresql/data
|
||
|
|
healthcheck:
|
||
|
|
test: ["CMD-SHELL", "pg_isready -U orchestrator -d orchestrator"]
|
||
|
|
interval: 5s
|
||
|
|
timeout: 5s
|
||
|
|
retries: 5
|
||
|
|
networks:
|
||
|
|
{{ customer }}-orchestrator:
|
||
|
|
ipv4_address: 172.20.32.2
|
||
|
|
|
||
|
|
orchestrator-api:
|
||
|
|
container_name: {{ customer }}-orchestrator-api
|
||
|
|
image: code.letsbe.solutions/letsbe/orchestrator:latest
|
||
|
|
restart: always
|
||
|
|
labels:
|
||
|
|
- "diun.enable=true"
|
||
|
|
ports:
|
||
|
|
- '127.0.0.1:8100:8000'
|
||
|
|
command: ["sh", "-c", "alembic upgrade head && uvicorn app.main:app --host 0.0.0.0 --port 8000"]
|
||
|
|
environment:
|
||
|
|
DATABASE_URL: postgresql+asyncpg://orchestrator:{{ orchestrator_db_password }}@orchestrator-db:5432/orchestrator
|
||
|
|
DEBUG: "false"
|
||
|
|
APP_NAME: "LetsBe Orchestrator"
|
||
|
|
ADMIN_API_KEY: {{ admin_api_key }}
|
||
|
|
LOCAL_MODE: "true"
|
||
|
|
LOCAL_AGENT_KEY: {{ local_agent_key }}
|
||
|
|
HUB_URL: {{ hub_url }}
|
||
|
|
HUB_API_KEY: {{ hub_api_key }}
|
||
|
|
HUB_TELEMETRY_ENABLED: {{ hub_telemetry_enabled }}
|
||
|
|
INSTANCE_ID: {{ instance_id }}
|
||
|
|
LICENSE_KEY: {{ license_key }}
|
||
|
|
depends_on:
|
||
|
|
orchestrator-db:
|
||
|
|
condition: service_healthy
|
||
|
|
healthcheck:
|
||
|
|
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health')"]
|
||
|
|
interval: 5s
|
||
|
|
timeout: 5s
|
||
|
|
retries: 10
|
||
|
|
start_period: 10s
|
||
|
|
networks:
|
||
|
|
{{ customer }}-orchestrator:
|
||
|
|
ipv4_address: 172.20.32.3
|
||
|
|
|
||
|
|
networks:
|
||
|
|
{{ customer }}-orchestrator:
|
||
|
|
name: {{ customer }}-orchestrator
|
||
|
|
ipam:
|
||
|
|
driver: default
|
||
|
|
config:
|
||
|
|
- subnet: 172.20.32.0/28
|
||
|
|
gateway: 172.20.32.1
|
||
|
|
|
||
|
|
volumes:
|
||
|
|
{{ customer }}-orchestrator-db:
|