docker / build (push) Failing after 39s
- Docker: Dockerfile (CPU), compose с FlareSolverr, настройка через DUB_* переменные, токен доступа к /predict, tools/pack_models.py, workflow Gitea Actions, docs/docker.md - Модель грузится офлайн (config.json рядом с весами); общий код вынесен в src/spans.py, сервису не нужны sklearn/matplotlib/pandas - Обучение: профили tiny2/base/large/modern, запуски в models/runs, реестр и честное сравнение на одной тестовой выборке (src/runs.py), пункт меню «Модели» - Датасет: язык и аудио-параметры дорожек, 18+ по строкам «Аудио», ручные метки по ссылкам, переиндексация сохранённого HTML, параллельная сборка, сбалансированная выборка - Тексты страниц (data/pages) больше не хранятся в git Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
28 lines
1005 B
YAML
28 lines
1005 B
YAML
# DUB-AI + FlareSolverr. docker compose up -d (настройки — в .env, см. .env.example)
|
|
services:
|
|
dub-ai:
|
|
image: ${DUB_IMAGE:-dub-ai:local}
|
|
build: .
|
|
restart: unless-stopped
|
|
ports:
|
|
- "${DUB_PUBLISH_PORT:-8000}:8000"
|
|
environment:
|
|
DUB_FLARESOLVERR_URL: ${DUB_FLARESOLVERR_URL-http://flaresolverr:8191}
|
|
DUB_API_TOKEN: ${DUB_API_TOKEN:-}
|
|
DUB_FETCH_TIMEOUT: ${DUB_FETCH_TIMEOUT:-60}
|
|
DUB_TORCH_THREADS: ${DUB_TORCH_THREADS:-}
|
|
# Образ без моделей (или чтобы подменить их без пересборки): раскомментируйте
|
|
# volumes:
|
|
# - ./models:/app/models:ro
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 3g
|
|
|
|
flaresolverr:
|
|
image: ghcr.io/flaresolverr/flaresolverr:latest
|
|
restart: unless-stopped
|
|
environment:
|
|
LOG_LEVEL: info
|
|
# порт 8191 наружу не публикуется: доступен только контейнеру dub-ai
|