- беклог и план переехали в docs/tasks (38 задач, 11 целей), слаги переименованы с транслита на английские, 85 ссылок поправлены - conventions.md разобран в docs/conventions/, local-research.md — в docs/research/, review-journal.md — в docs/review.md с разделом настройки конвейера; заведены security.md, adr/ и .pm.json - шаг docs.py check добавлен в task gate; поведение в architecture.md помечено девятью маркерами долга, database.md получил настройки с числовым значением
2.3 KiB
Деплой на rivendell
Секция: инфра · Хук: Сервис живёт на рабочей машине — телефон достаёт до него только дома · Теги: goal:deploy
Сервис живёт в контейнере на рабочей машине, телефон достаёт до него только дома. Вне дома экспорт копится и уезжает пачкой при возвращении — работает, но это не то, ради чего заводился всегда доступный VPS.
Есть готовый образец: jellybit собирает образ локально и отправляет на сервер
через docker save/load, Caddy впереди терминирует TLS. Здесь то же самое.
Шаги:
- сборка образа локально, доставка на rivendell;
- Caddy: поддомен приёма и поддомен чтения (плюс MCP на нём же);
- тома под
./data, конфиг с токенами отдельно, права0600.
Готово, когда телефон шлёт на публичный адрес из любой сети, а агент читает по тому же домену.
Зависит от задачи про секреты: выезжать наружу с выключенной проверкой токенов нельзя.
Этим же переездом закрывается резервное копирование: на сервере пет-проектов
механизм уже готов, своего заводить не нужно (задача bekap-dannyh снята,
см. CLOSED.md). Побочное следствие — до деплоя история существует в одном
экземпляре на рабочей машине; это и есть цена ожидания.
Том стоит смонтировать так, чтобы серверный бекап забирал его без отдельной
настройки, и снимать копию SQLite через VACUUM INTO, а не cp: телефон шлёт
непрерывно, и файл под записью копировать нельзя.