compose.yml was tracked but had to be edited per deployment, so every
update collided with the local change ("your local changes would be
overwritten by merge"). The domain now comes from STOAT_DOMAIN via
compose interpolation, and host.docker.internal is mapped unconditionally
so a host-side proxy needs no edit either. Nothing in compose.yml has to
be touched any more.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
23 lines
1.1 KiB
YAML
23 lines
1.1 KiB
YAML
name: stoat-mbot
|
|
|
|
# Этот файл править не нужно: всё настраивается в .env, который docker compose
|
|
# читает и для подстановки переменных, и как env_file сервиса.
|
|
services:
|
|
mbot:
|
|
build: .
|
|
restart: always
|
|
env_file: .env
|
|
ports:
|
|
# Наружу не торчит: домен вешается на внешний Caddy хоста.
|
|
- "127.0.0.1:3005:3005"
|
|
extra_hosts:
|
|
# Домен Stoat (STOAT_DOMAIN в .env) резолвится в сам хост, где внешний
|
|
# Caddy держит валидный TLS. Так бот ходит в API, gateway и LiveKit ровно
|
|
# как обычный клиент, без зависимости от NAT loopback на роутере.
|
|
- "${STOAT_DOMAIN:-stoat.invalid}:host-gateway"
|
|
# Для YTDLP_PROXY, указывающего на прокси, поднятый на хосте.
|
|
- "host.docker.internal:host-gateway"
|
|
volumes:
|
|
# cookies.txt для yt-dlp и/или локальная медиатека
|
|
- ./data:/data
|