- роадмап отвечает «что умеет и чего не умеет»: PLAN.md → ROADMAP.md, четыре канонические секции, достигнутые звенья строками в «Готово», цели переформулированы возможностями приложения - задачи: род работы и «Затрагивает» набору спринта, 34 заголовка в форму действия, «Завершение» целей перечнями со ссылкой из каждой задачи - вычитка проходами task-form и doc-wording, починены протухшие факты в README, паспорте и review.md
2.5 KiB
Выложить сервис на rivendell
- Секция: Инфра
- Зачем: Сервис живёт на рабочей машине — телефон достаёт до него только дома
- Теги: goal:deploy
Сервис живёт в контейнере на рабочей машине, телефон достаёт до него только дома. Вне дома экспорт копится и уезжает пачкой при возвращении — работает, но это не то, ради чего заводился всегда доступный VPS.
Есть готовый образец: jellybit собирает образ локально и отправляет на сервер
через docker save/load, Caddy впереди терминирует TLS. Здесь то же самое.
Шаги:
- сборка образа локально, доставка на rivendell;
- Caddy: поддомен приёма и поддомен чтения (плюс MCP на нём же);
- тома под
./data, конфиг с токенами отдельно, права0600.
Готово, когда телефон шлёт на публичный адрес из любой сети, а агент читает по тому же домену.
Зависит от задачи про секреты: выезжать наружу с выключенной проверкой токенов нельзя.
Этим же переездом закрывается резервное копирование: на сервере пет-проектов
механизм уже готов, своего заводить не нужно (задача bekap-dannyh снята,
см. CLOSED.md). Побочное следствие — до деплоя история существует в одном
экземпляре на рабочей машине; это и есть цена ожидания.
Том стоит смонтировать так, чтобы серверный бекап забирал его без отдельной
настройки, и снимать копию SQLite через VACUUM INTO, а не cp: телефон шлёт
непрерывно, и файл под записью копировать нельзя.
Двигает строку «Завершения» цели: «Телефон шлёт на публичный адрес из любой сети, агент читает по тому же домену».