Фиксы 127.0.0.1 и замечания по установке и удалению #11

Closed
opened 2026-09-26 10:08:36 +00:00 by forgejo-admin · 2 comments

════════════════════════════════════════════════════════════
УСТАНОВКА ВЫПОЛНЕНА УСПЕШНО
Сервис: pi-web-monitor (systemd, включён автозапуск)
Код: /opt/watcherenish (ветка main)
Адрес: http://127.0.0.1:8787
Доступ: снаружи — через SSH-туннель или Tailscale (BIND=127.0.0.1)
Конфиг: /etc/default/pi-web-monitor (правки сохраняются при повторных установках)
AUTH_TOKEN: ***
(сгенерирован автоматически; введите его один раз в UI)
Проверка: systemctl status pi-web-monitor
════════════════════════════════════════════════════════════
Это строка после установки с помощью скрипта curl -fsSL http://10.10.1.7:3000/forgejo-admin/watcherenish/raw/branch/main/deploy/install.sh | sudo bash .
Есть замечания:

  1. Зачем поднимается полноценный цуи интерфейс на linux машине? Он ведь должен быть только поставщиком данных.
  2. Почему только 127.0.0.1, как я должен подключиться со своей Windows машины? Нужно сделать 0.0.0.0
  3. В README не написано, как удалить полностью с linux машины этот функционал? Нужно чтобы была такая возможность, полностью удалить (только не трогать вспомогательные по типа Node и так далее, чисто systemctl наш сервис), а также в конце в сводке нужно написать команду, для удаления.
════════════════════════════════════════════════════════════ УСТАНОВКА ВЫПОЛНЕНА УСПЕШНО Сервис: pi-web-monitor (systemd, включён автозапуск) Код: /opt/watcherenish (ветка main) Адрес: http://127.0.0.1:8787 Доступ: снаружи — через SSH-туннель или Tailscale (BIND=127.0.0.1) Конфиг: /etc/default/pi-web-monitor (правки сохраняются при повторных установках) AUTH_TOKEN: *** (сгенерирован автоматически; введите его один раз в UI) Проверка: systemctl status pi-web-monitor ════════════════════════════════════════════════════════════ Это строка после установки с помощью скрипта curl -fsSL http://10.10.1.7:3000/forgejo-admin/watcherenish/raw/branch/main/deploy/install.sh | sudo bash . Есть замечания: 1. Зачем поднимается полноценный цуи интерфейс на linux машине? Он ведь должен быть только поставщиком данных. 2. Почему только 127.0.0.1, как я должен подключиться со своей Windows машины? Нужно сделать 0.0.0.0 3. В README не написано, как удалить полностью с linux машины этот функционал? Нужно чтобы была такая возможность, полностью удалить (только не трогать вспомогательные по типа Node и так далее, чисто systemctl наш сервис), а также в конце в сводке нужно написать команду, для удаления.
Collaborator

Беру задачу, ветка feature/11_bind_default_and_uninstall. Пункты 2 (BIND=0.0.0.0) и 3 (uninstall + команда в сводке) — сделаю; по пункту 1 (TUI) дам разъяснение — на Linux-машине интерактивного интерфейса нет, сейчас отвечу подробно.

Беру задачу, ветка `feature/11_bind_default_and_uninstall`. Пункты 2 (BIND=0.0.0.0) и 3 (uninstall + команда в сводке) — сделаю; по пункту 1 (TUI) дам разъяснение — на Linux-машине интерактивного интерфейса нет, сейчас отвечу подробно.
Collaborator

Разъяснение по пункту 1 и отчёт по пунктам 2–3 (правки — в PR #12).

1. «Зачем поднимается полноценный TUI на Linux-машине?»
Никакой терминальный/интерактивный интерфейс на машине не поднимается — и не поднимался. Сервис headless: это обычный веб-сервер (node:http, ноль зависимостей), который читает JSONL-сессии pi и отдаёт статику + JSON по HTTP. Весь «объёмный» интерфейс — это HTML/CSS/JS, которые рендерит ваш браузер на Windows уже на своей стороне. Linux-машина остаётся только поставщиком данных, как и задумано: на ней не запускается ни TUI-библиотека, ни X-сервер — только systemd-сервис с HTTP API.

2. Доступ с Windows-машины — сделано.

  • Дефолт установщика теперь BIND=0.0.0.0 (защита от «голого» сетевого доступа уже была в коде: без AUTH_TOKEN сервер с таким BIND не стартует; токен генерируется автоматически при первой установке).
  • В итоговой сводке теперь печатается реальный адрес http://<IP-машины>:8787 (IP определяется автоматически) плюс локальный 127.0.0.1.
  • На уже установленной машине достаточно один раз: sudo sed -i 's/^BIND=.*/BIND=0.0.0.0/' /etc/default/pi-web-monitor && sudo systemctl restart pi-web-monitor (токен в конфиге уже есть). После этого с Windows открывается http://<IP-linux-машины>:8787, при первом входе вводите AUTH_TOKEN из /etc/default/pi-web-monitor.

3. Удаление — сделано.

  • Новый deploy/uninstall.sh, та же схема «одна команда»: останавливает и удаляет systemd-юнит, удаляет код /opt/watcherenish (только если это клон именно watcherenish) и конфиг /etc/default/pi-web-monitor. Node.js, git, curl и прочие системные пакеты не трогает, ~/.pi не трогает. Идемпотентен.
  • В конце сводки установки теперь печатается команда удаления.
  • В README добавлен раздел «Удаление».

Готово, PR #12 на ревью, ветка feature/11_bind_default_and_uninstall (33/33 теста зелёные). После мержа достаточно переустановить одной командой из main — конфиг не перетрётся.

Разъяснение по пункту 1 и отчёт по пунктам 2–3 (правки — в PR #12). **1. «Зачем поднимается полноценный TUI на Linux-машине?»** Никакой терминальный/интерактивный интерфейс на машине не поднимается — и не поднимался. Сервис headless: это обычный веб-сервер (node:http, ноль зависимостей), который читает JSONL-сессии pi и отдаёт статику + JSON по HTTP. Весь «объёмный» интерфейс — это HTML/CSS/JS, которые рендерит ваш браузер на Windows уже на своей стороне. Linux-машина остаётся только поставщиком данных, как и задумано: на ней не запускается ни TUI-библиотека, ни X-сервер — только systemd-сервис с HTTP API. **2. Доступ с Windows-машины — сделано.** - Дефолт установщика теперь `BIND=0.0.0.0` (защита от «голого» сетевого доступа уже была в коде: без `AUTH_TOKEN` сервер с таким BIND не стартует; токен генерируется автоматически при первой установке). - В итоговой сводке теперь печатается реальный адрес `http://<IP-машины>:8787` (IP определяется автоматически) плюс локальный `127.0.0.1`. - На уже установленной машине достаточно один раз: `sudo sed -i 's/^BIND=.*/BIND=0.0.0.0/' /etc/default/pi-web-monitor && sudo systemctl restart pi-web-monitor` (токен в конфиге уже есть). После этого с Windows открывается `http://<IP-linux-машины>:8787`, при первом входе вводите `AUTH_TOKEN` из `/etc/default/pi-web-monitor`. **3. Удаление — сделано.** - Новый `deploy/uninstall.sh`, та же схема «одна команда»: останавливает и удаляет systemd-юнит, удаляет код `/opt/watcherenish` (только если это клон именно watcherenish) и конфиг `/etc/default/pi-web-monitor`. Node.js, git, curl и прочие системные пакеты не трогает, `~/.pi` не трогает. Идемпотентен. - В конце сводки установки теперь печатается команда удаления. - В README добавлен раздел «Удаление». Готово, PR #12 на ревью, ветка `feature/11_bind_default_and_uninstall` (33/33 теста зелёные). После мержа достаточно переустановить одной командой из main — конфиг не перетрётся.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
forgejo-admin/watcherenish#11
No description provided.