Initial import: vesti.nixg.ru — новостной апрув-проект (web, crawler, classifier, publisher, openspec)

This commit is contained in:
kpa39l
2026-09-13 15:58:32 +00:00
commit c3f59f7b7a
113 changed files with 7065 additions and 0 deletions
+26
View File
@@ -0,0 +1,26 @@
services:
publisher:
build: .
container_name: vesti-publisher
restart: unless-stopped
ports:
- "127.0.0.1:8410:8410" # только локально (внутри bigbox)
env_file:
- ../../.env # VESTI_BOT_TOKEN, TG_PROXY, VESTI_BOT_CHANNELS (корень /opt/vesti)
environment:
- PUBLISHER_PORT=8410
# в контейнере 127.0.0.1 — это сам контейнер; туннель SOCKS5 живёт на хосте
- TG_PROXY=socks5://host.docker.internal:1080
extra_hosts:
- "host.docker.internal:host-gateway"
volumes:
# медиа для карточек: веб шлёт media/<file> (media_path из БД).
# Физически файлы лежат в /opt/vesti/media/media/ (вложенный каталог, см. download_media в краулере).
# Монтируем именно внутренний каталог, чтобы Path('media/<file>') в контейнере (от WORKDIR /srv/publisher) попал в файл.
- ../../media/media:/srv/publisher/media:ro
healthcheck:
test: ["CMD", "python", "-c", "import urllib.request;urllib.request.urlopen('http://127.0.0.1:8410/healthz',timeout=4)"]
interval: 30s
timeout: 5s
retries: 3
start_period: 10s