diff --git a/README.md b/README.md index 1946e9d..2cc1ca0 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,58 @@ # dockge-stacks -Compose-стеки Dockge с TrueNAS (192.168.31.100) \ No newline at end of file +Снимок compose-стеков Dockge с TrueNAS Scale 25.10.7 (192.168.31.100). +Источник: `/mnt/ssd/apps/dockge/stacks` · снято только чтение, 2026-11-01. + +## Состав + +| Стек | Файл | Порт(ы) | Назначение | +|---|---|---|---| +| comfyui | `stacks/comfyui/compose.yaml` | 8188 | ComfyUI (`yanwk/comfyui-boot:cu126-slim`, `--force-fp16`) | +| dcm | `stacks/dcm/compose.yaml` | 7576 | Docker Container Manager | +| dockmon | `stacks/dockmon/compose.yaml` | 8001→443 | мониторинг Docker | +| euro-office | `stacks/euro-office/compose.yaml` | 8081→80 | ONLYOFFICE-форк (DocumentServer), JWT | +| mediamanager | `stacks/mediamanager/compose.yaml` | 8000 | MediaManager + PostgreSQL | +| ollama | `stacks/ollama/compose.yaml` | 11434 | Ollama (V100, ctx 32768, KV q8_0) | +| open-terminal | `stacks/open-terminal/compose.yaml` | 30377→8000 | Open Terminal (доступ к `/mnt/*`, docker.sock) | +| open-webui | `stacks/open-webui/compose.yaml` | 3000→8080 | Open WebUI | +| prunemate | `stacks/prunemate/compose.yaml` | 7676→8080 | очистка Docker | +| searxng | `stacks/searxng/compose.yaml` | 5080→8080 | метапоиск + redis | +| strata | `stacks/strata/compose.yaml` | 8080 (bind 192.168.31.100) | Strata 0.2.9-cuda12, qwen IQ3_XXS, ctx 262144 | +| torrserve | `stacks/torrserve/compose.yaml` | 8090 | TorrServer | +| truenas-mcp | `stacks/truenas-mcp/compose.yaml` + `Dockerfile` + `config.json` | 8814→8000 | MCP-сервер TrueNAS (mcpo) | +| cloud-platform | `stacks/cloud-platform/docker-compose.yml` + исходники | 3000/8000/5432/6379/5672/5555 | FastAPI+React+Postgres/Redis/RabbitMQ/Celery (Proxmox-панель) | + +## Секреты — как устроено в этом репозитории + +В compose-файлах реальные значения **заменены на переменные окружения**. Значения лежат в `.env` рядом со стеком на хосте (`/mnt/ssd/apps/dockge/stacks/<стек>/.env`) и в коммит не попали: + +| Переменная | Где используется | +|---|---| +| `EURO_OFFICE_JWT_SECRET` | euro-office | +| `MEDIAMANAGER_PG_PASSWORD` | mediamanager (Postgres) | +| `OPEN_TERMINAL_API_KEY` | open-terminal | +| `WEBUI_SECRET_KEY` | open-webui | +| `SEARXNG_SECRET` | searxng (уже было через `${...}`) | +| `STRATA_API_KEY` | strata (уже было через `${...}`) | +| `TRUENAS_API_KEY` | truenas-mcp (через `env_file: .env`) | +| `CP_PG_PASSWORD`, `CP_REDIS_PASSWORD`, `CP_RABBITMQ_PASSWORD` | cloud-platform (были захардкожены в compose) | + +`.env.global.example` — пустой шаблон глобального env Dockge (на хосте `.env.global` сейчас пустой). + +## Как восстановить / использовать + +```bash +git clone http://192.168.31.100:30008/host/dockge-stacks.git +cd dockge-stacks/stacks/<стек> +# создать .env со значениями переменных из таблицы выше +docker compose config # проверить подстановку +docker compose up -d +``` + +Для Dockge: каждый каталог `stacks/<стек>/` = один проект (в Dockge имя проекта = имя папки, файл `compose.yaml`). + +## Замеченное при снятии снимка (ничего не менял) + +- `ollama` в этом стеке использует volume `/mnt/ssd/apps/ollama-dockge`, тогда как каталог `/mnt/ssd/apps/ollama` занят другим (не-Dockge) запуском — два ollama-каталога по ~24 ГБ. +- `cloud-platform` содержит захардкоженные dev-пароли и дефолтный `JWT_SECRET_KEY=your-super-secret-jwt-key...`; в репозитории вынесены в env. +- В `stacks/` есть каталог `truenas-mcp/truenas/` (build-контекст) — обычный layout, не мусор; а вот `openwebui/` и `config/` выше (`/mnt/ssd/apps/dockge/`) это данные Open WebUI и БД Dockge, в репозиторий не включены.