Files
obsidian-vault/personal/tech/lampac-deployment.md
T

6.2 KiB
Raw Blame History

title, created, updated, type, namespace, tags, related
title created updated type namespace tags related
Lampac — развёртывание и эксплуатация (Кра́кен) 2026-09-22 2026-09-22 tech personal
lampac
torrserver
docker
kraken
streaming
webos
personal/plans/lampac-kraken
personal/tech/multistream-single-flow-limit
family/how-to/kraken-network

Lampac — развёртывание и эксплуатация (Кра́кен)

Технический справочник. Развёрнуто 2026-09-22. План и статус шагов — personal/plans/lampac-kraken.

Что это

lampac-nextgen/lampac (MIT, .NET 10) — серверный бэкенд для Lampa. Один контейнер, порт 9118.

Внутри (всё в одном образе):

  • TorrServer — subprocess, кэш раздач
  • JacRed — Jackett-совместимый индексатор
  • LampaWeb — веб-морда
  • TmdbProxy, DLNA, Sync

🔴 TorrServer встроенный. Отдельный контейнер не нужен. Проверено 2026-09-22: в логах первого старта видно compilation TorrServer. Внешний TS — лишняя сущность.

Расположение на Кра́кене

/srv/dev-disk-by-uuid-6194539b-03e0-4f33-986b-4da09834e82f/lampac/
  ├── docker-compose.yml
  ├── config/   → /lampac/config
  ├── cache/    → /lampac/cache   (кэш TorrServer — только сюда)
  └── data/     → /lampac/data    (БД JacRed)

Владелец kraken:kraken, права 755.

⚠️ Всё пишущее — на data-диск (1.8T). НЕ на SD (/, 14G, 8.6G свободно).

docker-compose.yml

services:
  lampac:
    image: ghcr.io/lampac-nextgen/lampac:latest
    container_name: lampac
    platform: linux/arm64
    restart: unless-stopped
    ports:
      - "9118:9118"
    environment:
      - TZ=Asia/Bishkek
      - LANG=ru_RU.UTF-8
    volumes:
      - ./config:/lampac/config
      - ./cache:/lampac/cache
      - ./data:/lampac/data

⚠️ В контейнере рабочий каталог /lampac, часть файлов читается из корня, не из config/.

Управление

ssh kraken
cd /srv/dev-disk-by-uuid-6194539b-03e0-4f33-986b-4da09834e82f/lampac

docker compose up -d
docker compose logs -f
docker compose restart
docker compose down

Правка docker-compose.yml — без sudo (каталог kraken:kraken). Создание новых каталогов в корне диска — через sudo (корень root:root). У kraken sudo без пароля.

Проверка работоспособности

curl -sS --max-time 20 "http://localhost:9118/version?type=hash"
# → 46b29e1fe8fa6021cd83e75c41abffb7   (для текущего :latest)

По сети: http://192.168.1.14:9118/version?type=hash — то же значение.

⚠️ Питфоллы

1. Первый старт долгий (~4 минуты)

Контейнер компилирует и грузит ~40 native-модулей: compilation LampaWeb, DLNA, GStreamer, Sync, TorrServer, ... затем loaded module: <имя>.

Пока идёт загрузка, HTTP рвёт соединение:

curl: (56) Recv failure: Connection reset by peer

🔴 health: healthy не означает готовность HTTP. Статус встаёт раньше. Признак готовности — лог Configure complete (идёт после последнего loaded module:).

Не перезапускать контейнер, не считать это поломкой. Просто ждать.

2. docker manifest inspect с Mac отдаёт denied

GHCR требует авторизацию при обращении с Mac. Проверять наличие linux/arm64 из Кра́кена:

ssh kraken 'docker manifest inspect ghcr.io/lampac-nextgen/lampac:latest' | jq -r '.manifests[].platform | .os + "/" + .architecture'
# linux/amd64
# linux/arm64      ← есть, сборка из исходников не нужна
# unknown/unknown
# unknown/unknown

3. Шаблон логов первого старта

compilation Alloha
compilation LampaWeb
...
loaded module: Vibix
loaded module: TorrServer
...
Configure complete          ← HTTP начинает отвечать

Сеть

Хост IP
Кра́кен (eth0) 192.168.1.14 (второй адрес 192.168.1.15)
ТВ LG 192.168.1.70
Mac Alex 192.168.1.57

Один сегмент 192.168.1.x — туннели и проброс портов не нужны. Подробнее: family/how-to/kraken-network.

Занятые порты на Кра́кене (2026-09-22)

7878 Radarr · 8096 Jellyfin · 8191 FlareSolverr · 8989 Sonarr · 9000 Portainer · 9091 Transmission · 9696 Prowlarr · 51413 Transmission (UDP) · 9118 Lampac

Выбор порта — docker compose config + sudo ss -tlnp перед деплоем.

Интеграция с Lampa (ТВ)

  • Плагин: http://192.168.1.14:9118/online.js
  • TorrServer в Lampa: Настройки → TorrServer → «Использовать основную ссылку» → http://192.168.1.14:9118
  • Буфер плеера: 50–100 МБ
  • UE на LG: .ipk с флешки на розничных телевизорах не работает → ставить через Media Station X
  • /lg.ipk отдаёт сам Lampac

Откат

cd /srv/.../lampac && docker compose down
sudo rm -rf /srv/dev-disk-by-uuid-6194539b-03e0-4f33-986b-4da09834e82f/lampac

Lampac изолирован — остальной стек Кра́кена не затрагивается.

Что осталось

  1. Лимит кэша TorrServer — сейчас дефолт. Задать ~20 ГБ, чтобы не сожрать 396 ГБ свободных.
  2. Подключение Lampa на ТВ — шаг 6 плана, на стороне Alex.