version: '3.8' services: watsonx-openai-proxy: build: . ports: - "8000:8000" environment: - IBM_CLOUD_API_KEY=${IBM_CLOUD_API_KEY} - WATSONX_PROJECT_ID=${WATSONX_PROJECT_ID} - WATSONX_CLUSTER=${WATSONX_CLUSTER:-us-south} - HOST=0.0.0.0 - PORT=8000 - LOG_LEVEL=${LOG_LEVEL:-info} - API_KEY=${API_KEY:-} - ALLOWED_ORIGINS=${ALLOWED_ORIGINS:-*} - MODEL_MAP_GPT4=${MODEL_MAP_GPT4:-ibm/granite-4-h-small} - MODEL_MAP_GPT35=${MODEL_MAP_GPT35:-ibm/granite-3-8b-instruct} - MODEL_MAP_GPT4_TURBO=${MODEL_MAP_GPT4_TURBO:-meta-llama/llama-3-3-70b-instruct} - MODEL_MAP_TEXT_EMBEDDING_ADA_002=${MODEL_MAP_TEXT_EMBEDDING_ADA_002:-ibm/slate-125m-english-rtrvr} restart: unless-stopped healthcheck: test: ["CMD", "python", "-c", "import httpx; httpx.get('http://localhost:8000/health')"] interval: 30s timeout: 10s retries: 3 start_period: 5s