33 lines
1.1 KiB
YAML
33 lines
1.1 KiB
YAML
services:
|
|
app:
|
|
build: .
|
|
ports:
|
|
- "${APP_PORT:-8201}:${APP_PORT:-8201}"
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
APP_PORT: ${APP_PORT:-8201}
|
|
DB_PATH: /app/data/chat.db
|
|
IMAGES_DIR: /app/static/images
|
|
LLM_BASE_URL: ${LLM_BASE_URL:-}
|
|
LLM_API_KEY: ${LLM_API_KEY:-}
|
|
ROUTER_KEY: ${ROUTER_KEY:-}
|
|
LLM_PROXY: ${LLM_PROXY:-}
|
|
LLM_SOCKS5: ${LLM_SOCKS5:-}
|
|
LLM_SOCKS5_PROXY: ${LLM_SOCKS5_PROXY:-}
|
|
CHAT_MODEL: ${CHAT_MODEL:-}
|
|
SYSTEM_MODEL: ${SYSTEM_MODEL:-}
|
|
LLM_FALLBACK_MODEL: ${LLM_FALLBACK_MODEL:-}
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
volumes:
|
|
# Папки на хосте — та же БД и static, что при запуске без Docker
|
|
- ./data:/app/data
|
|
- ./static:/app/static
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ["CMD", "sh", "-c", "python -c \"import os,urllib.request; urllib.request.urlopen('http://127.0.0.1:'+os.environ.get('APP_PORT','8201')+'/health')\""]
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
start_period: 15s |