Files
social-app/infra/docker/docker-compose.yml
T
qzl aa30fe0ce6 refactor: 重构 Tool Result 契约,移除 ui_hints 统一使用 result 字段
- ToolAgentOutput 移除 result_summary 和 ui_hints,统一使用 result 字段
- 日历/用户查找工具移除 ui_hints 输出,改为机器可读的结构化结果
- Agent History 移除 tool 消息的 ui_hints 处理逻辑
- App 版本检查改为 manifest.json 方式,支持多渠道发布
- 更新 settings 配置和测试用例适配新结构
2026-03-17 12:18:09 +08:00

95 lines
3.2 KiB
YAML

name: social-app-local
services:
redis:
image: redis:7-alpine
container_name: social-local-redis
restart: unless-stopped
ports:
- "${SOCIAL_REDIS__PORT:-6379}:6379"
volumes:
- redis_data:/data
environment:
- REDIS_PASSWORD=${SOCIAL_REDIS__PASSWORD:-}
command: >
sh -c 'if [ -n "$$REDIS_PASSWORD" ]; then redis-server --appendonly yes --requirepass "$$REDIS_PASSWORD"; else redis-server --appendonly yes; fi'
healthcheck:
test: ["CMD", "sh", "-c", "if [ -n \"$$REDIS_PASSWORD\" ]; then redis-cli -a \"$$REDIS_PASSWORD\" ping; else redis-cli ping; fi"]
interval: 5s
timeout: 3s
retries: 5
litellm-config-job:
build:
context: ../..
dockerfile: backend/Dockerfile
image: social-local-backend
container_name: social-local-litellm-config-job
restart: "no"
env_file:
- ../../.env
environment:
- PYTHONPATH=/app/backend/src
command: >
uv run python backend/scripts/build_litellm_proxy_config.py --output /config/litellm-proxy-config.yaml
volumes:
- litellm_config:/config
depends_on:
redis:
condition: service_healthy
litellm:
image: ghcr.io/berriai/litellm@sha256:b959a1816fa454a14d2842242d0fa1cd0d39f96fc94d3a1f4e1de4e48e2398c6
container_name: social-local-litellm
restart: unless-stopped
env_file:
- ../../.env
ports:
- "${SOCIAL_LITELLM__PORT:-3875}:${SOCIAL_LITELLM__PORT:-3875}"
volumes:
- litellm_config:/config:ro
command:
[
"--config",
"/config/litellm-proxy-config.yaml",
"--host",
"0.0.0.0",
"--port",
"${SOCIAL_LITELLM__PORT:-3875}",
]
depends_on:
redis:
condition: service_healthy
litellm-config-job:
condition: service_completed_successfully
init-job:
build:
context: ../..
dockerfile: backend/Dockerfile
image: social-local-backend
container_name: social-local-init-job
restart: "no"
environment:
- PYTHONPATH=/app/backend/src
- SOCIAL_DATABASE__HOST=${SOCIAL_DATABASE__HOST}
- SOCIAL_DATABASE__PORT=${SOCIAL_DATABASE__PORT}
- SOCIAL_DATABASE__NAME=${SOCIAL_DATABASE__NAME}
- SOCIAL_DATABASE__USER=${SOCIAL_DATABASE__USER}
- SOCIAL_DATABASE__PASSWORD=${SOCIAL_DATABASE__PASSWORD}
- SOCIAL_REDIS__HOST=${SOCIAL_REDIS__HOST}
- SOCIAL_REDIS__PORT=${SOCIAL_REDIS__PORT}
- SOCIAL_REDIS__PASSWORD=${SOCIAL_REDIS__PASSWORD:-}
- SOCIAL_RUNTIME__ENVIRONMENT=${SOCIAL_RUNTIME__ENVIRONMENT:-dev}
depends_on:
redis:
condition: service_healthy
working_dir: /app/backend
command: uv run python -m core.runtime.cli bootstrap
profiles:
- job
volumes:
redis_data:
litellm_config: