94 lines
4.2 KiB
Markdown
94 lines
4.2 KiB
Markdown
---
|
||
title: Skill — lampac-kraken-deploy
|
||
created: '2026-09-22'
|
||
updated: '2026-09-22'
|
||
type: tech
|
||
namespace: personal
|
||
tags:
|
||
- skill
|
||
- lampac
|
||
- docker
|
||
- kraken
|
||
- devops
|
||
related:
|
||
- '[[personal/tech/lampac-deployment]]'
|
||
- '[[personal/plans/lampac-kraken]]'
|
||
- '[[family/how-to/tv-luna-send]]'
|
||
---
|
||
|
||
# Skill: `lampac-kraken-deploy`
|
||
|
||
> Зеркало скилла `devops/lampac-kraken-deploy`. Файл скилла:
|
||
> `~/.hermes/hermes-whale/skills/devops/lampac-kraken-deploy/SKILL.md`
|
||
|
||
## Когда загружать
|
||
|
||
- Деплой/рестарт/отладка Lampac на Кра́кене
|
||
- Свежий контейнер `healthy`, но `curl :9118` → `Connection reset by peer`
|
||
- Подключение Lampa на LG ТВ
|
||
- Вопрос «нужен ли отдельный контейнер TorrServer»
|
||
|
||
Полная техническая справка: [[personal/tech/lampac-deployment]].
|
||
|
||
## Ключевое из скилла
|
||
|
||
1. **Хост — Кра́кен** (`ssh kraken`), aarch64 Debian 12. Не TrueNAS.
|
||
2. Образ содержит `linux/arm64` — сборка из исходников не нужна.
|
||
3. 🔴 **TorrServer встроенный** — второй контейнер не ставить.
|
||
4. Каталоги в корне диска — только через `sudo mkdir` (корень `root:root`, sudo без пароля).
|
||
5. 🔴 **Первый старт ~4 минуты.** `Connection reset by peer` — норма, ждать `Configure complete`.
|
||
`healthy` ≠ готовность HTTP.
|
||
6. `docker manifest inspect` с Mac → `denied`; проверять **из Кра́кена**.
|
||
7. `docker compose` только как плагин (v5.1.3), не `docker-compose`.
|
||
8. Приёмка = играет 5+ минут на ТВ, а не «API отвечает».
|
||
9. 🔴 **Lampa на ТВ ставится по SSH, флешка и Media Station X НЕ нужны.** См. [[personal/tech/lampac-deployment]].
|
||
10. 🔴 **`luna-send` по SSH печатает хелп вместо ответа** — обернуть в `script -q -c "..." /tmp/o.txt`.
|
||
11. Фактический appId Lampa на ТВ — **`com.lampac.tv`** (не `org.lampa.tv` из запроса установки).
|
||
|
||
## Установка Lampa на ТВ (сжато)
|
||
|
||
```bash
|
||
# скачать ipk на ТВ
|
||
ssh root@192.168.1.70 'curl -sS -o /tmp/lampa.ipk "http://192.168.1.14:9118/lg.ipk"'
|
||
|
||
# установить (только через com.webos.appInstallService + обёртку script)
|
||
ssh root@192.168.1.70 'rm -f /tmp/i.txt; script -q -c \
|
||
"luna-send -n 1 -f luna://com.webos.appInstallService/dev/install \
|
||
{\"id\":\"org.lampa.tv\",\"ipkUrl\":\"/tmp/lampa.ipk\",\"subscribe\":true}" /tmp/i.txt; cat /tmp/i.txt'
|
||
|
||
# запустить
|
||
ssh root@192.168.1.70 'rm -f /tmp/l.txt; script -q -c \
|
||
"luna-send -n 1 -f luna://com.webos.applicationManager/launch {\"id\":\"com.lampac.tv\"}" /tmp/l.txt'
|
||
```
|
||
|
||
ТВ: `root@192.168.1.70`, ключ `~/.ssh/konka_webos`, webOS 5.4.2, порты `22`/`3000`/`3001`.
|
||
|
||
## Проверка
|
||
|
||
```bash
|
||
ssh kraken 'docker ps --filter name=lampac --format "{{.Names}} {{.Status}} {{.Ports}}"'
|
||
ssh kraken 'curl -sS "http://localhost:9118/version?type=hash"'
|
||
ssh kraken 'curl -sS "http://192.168.1.14:9118/version?type=hash"'
|
||
```
|
||
|
||
## Откат
|
||
|
||
```bash
|
||
ssh kraken 'cd /srv/.../lampac && docker compose down'
|
||
ssh kraken 'sudo rm -rf /srv/dev-disk-by-uuid-6194539b-03e0-4f33-986b-4da09834e82f/lampac'
|
||
```
|
||
|
||
## Не закрыто
|
||
|
||
- Лимит кэша TorrServer — дефолт. Рекомендуется ~20 ГБ.
|
||
- `init.conf` не смонтирован — правки через `docker exec` не переживают пересоздание контейнера.
|
||
- Шаг 7 — watchlist в UI Lampa: [[personal/plans/lampac-watchlist-plugin]].
|
||
|
||
## Реальный скилл (файл)
|
||
|
||
`~/.hermes/hermes-whale/skills/devops/lampac-kraken-deploy/SKILL.md`
|
||
|
||
⚠️ **Скилл в файловой системе отстал от этой заметки** — в нём нет пунктов 9–11
|
||
(установка Lampa на ТВ по SSH, питфолл `luna-send`+`script`, фактический appId `com.lampac.tv`).
|
||
При следующей загрузке скилла — подтянуть из [[personal/tech/lampac-deployment]].
|