You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
2.2 KiB
YAML
81 lines
2.2 KiB
YAML
x-orquestrador-env: &orquestrador-env
|
|
GOOGLE_PROJECT_ID: ${GOOGLE_PROJECT_ID:-local-dev}
|
|
GOOGLE_LOCATION: ${GOOGLE_LOCATION:-us-central1}
|
|
VERTEX_MODEL_NAME: ${VERTEX_MODEL_NAME:-gemini-2.5-pro}
|
|
ENVIRONMENT: ${ENVIRONMENT:-development}
|
|
DEBUG: ${ORQUESTRADOR_DEBUG:-false}
|
|
DB_HOST: mysql
|
|
DB_PORT: 3306
|
|
DB_USER: root
|
|
DB_PASSWORD: root
|
|
DB_NAME: orquestrador_mock
|
|
MOCK_DB_HOST: mysql
|
|
MOCK_DB_PORT: 3306
|
|
MOCK_DB_USER: root
|
|
MOCK_DB_PASSWORD: root
|
|
MOCK_DB_NAME: orquestrador_mock
|
|
AUTO_SEED_TOOLS: ${AUTO_SEED_TOOLS:-true}
|
|
AUTO_SEED_MOCK: ${AUTO_SEED_MOCK:-true}
|
|
MOCK_SEED_ENABLED: ${MOCK_SEED_ENABLED:-true}
|
|
TELEGRAM_BOT_TOKEN: ${TELEGRAM_BOT_TOKEN:-}
|
|
TELEGRAM_POLLING_TIMEOUT: ${TELEGRAM_POLLING_TIMEOUT:-30}
|
|
TELEGRAM_REQUEST_TIMEOUT: ${TELEGRAM_REQUEST_TIMEOUT:-45}
|
|
CONVERSATION_STATE_BACKEND: ${CONVERSATION_STATE_BACKEND:-redis}
|
|
CONVERSATION_STATE_TTL_MINUTES: ${CONVERSATION_STATE_TTL_MINUTES:-60}
|
|
REDIS_URL: ${REDIS_URL:-redis://redis:6379/0}
|
|
REDIS_KEY_PREFIX: ${REDIS_KEY_PREFIX:-orquestrador}
|
|
REDIS_SOCKET_TIMEOUT_SECONDS: ${REDIS_SOCKET_TIMEOUT_SECONDS:-5}
|
|
|
|
services:
|
|
mysql:
|
|
image: mysql:8.4
|
|
container_name: orquestrador_mysql
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: root
|
|
MYSQL_DATABASE: orquestrador_mock
|
|
ports:
|
|
- "3306:3306"
|
|
volumes:
|
|
- mysql_data:/var/lib/mysql
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "mysqladmin ping -h 127.0.0.1 -uroot -p$$MYSQL_ROOT_PASSWORD"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 10
|
|
start_period: 20s
|
|
|
|
redis:
|
|
image: redis:7-alpine
|
|
container_name: orquestrador_redis
|
|
ports:
|
|
- "6379:6379"
|
|
healthcheck:
|
|
test: ["CMD", "redis-cli", "ping"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
telegram:
|
|
build: .
|
|
container_name: orquestrador_telegram
|
|
environment: *orquestrador-env
|
|
depends_on:
|
|
mysql:
|
|
condition: service_healthy
|
|
redis:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
|
|
bootstrap:
|
|
build: .
|
|
profiles: ["bootstrap"]
|
|
environment: *orquestrador-env
|
|
command: ["python", "-m", "app.db.bootstrap"]
|
|
depends_on:
|
|
mysql:
|
|
condition: service_healthy
|
|
restart: "no"
|
|
|
|
volumes:
|
|
mysql_data:
|