From a437bd5884fe799736a129fe72ebd3e4eaf9ad61 Mon Sep 17 00:00:00 2001 From: Stream Date: Sun, 26 Apr 2026 14:10:01 +0300 Subject: [PATCH] auto-sync: 2026-04-26 14:10:01 --- installer/registry.jsonl | 1 + tasks/plane/SPEC_INSTALL.md | 146 ++++++++++++++++++++++++++++++++++++ 2 files changed, 147 insertions(+) create mode 100644 tasks/plane/SPEC_INSTALL.md diff --git a/installer/registry.jsonl b/installer/registry.jsonl index b841c73..13ef73d 100644 --- a/installer/registry.jsonl +++ b/installer/registry.jsonl @@ -9,3 +9,4 @@ {"ts":"2026-04-25T10:04:39Z","session":"20260425-100247_fr24_schedule-aircraft-type-coalesce_78a6","host":"fr24","status":"success","agent":"stream","files":["/app/main.py"]} {"ts":"2026-04-26T10:02:04Z","session":"20260425-100247_fr24_schedule-aircraft-type-coalesce_78a6","host":"fr24","status":"success","agent":"stream"} {"ts":"2026-04-26T10:06:37Z","session":"20260426-100232_fr24_m4-outlier-filter-preprocess_ce04","host":"fr24","status":"success","agent":"stream","files":["/home/fr24/projects/fr24/ingest/preprocess/main.py"]} +{"ts":"2026-04-26T11:09:18Z","session":"20260426-110213_mva154_plane-install_d8bb","host":"mva154","status":"success","agent":"stream","files":["/home/slin/plane-selfhost/plane-app/plane.env"]} diff --git a/tasks/plane/SPEC_INSTALL.md b/tasks/plane/SPEC_INSTALL.md new file mode 100644 index 0000000..a2d8d95 --- /dev/null +++ b/tasks/plane/SPEC_INSTALL.md @@ -0,0 +1,146 @@ +# ТЗ: Установка Plane на mva154 + +**Дата:** 2026-04-26 +**Хост:** mva154, `slin@82.22.50.71:22` (прямой SSH, пароль из env `MVA154_PASSWORD`) +**Доступ:** `~/.openclaw/skills/installer/scripts/ssh_exec.sh --host mva154 --cmd "..."` +**Использовать:** installer skill (session + backup + change + verify) + +--- + +## Задача + +Установить **Plane Community Edition** в Docker Compose на хост mva154. +Plane — self-hosted трекер задач и проектов (аналог Jira/Linear). + +--- + +## Состояние хоста (проверено 2026-04-26) + +- OS: Ubuntu, Linux 5.15.0, x86_64 +- CPU: 4 ядра +- RAM: 7.7 GB (4.4 GB свободно) +- Диск: 54 GB, **17 GB свободно** (69%) — очищено заранее +- Docker: 29.3.0 +- Docker Compose: v5.1.0 +- Уже запущены сервисы через nginx на портах 5555, 5556, 5557 + +--- + +## Шаги установки + +### 1. Создать директорию + +```bash +mkdir -p /home/slin/plane-selfhost +cd /home/slin/plane-selfhost +``` + +### 2. Скачать и запустить setup.sh (Community Edition) + +```bash +curl -fsSL -o setup.sh https://github.com/makeplane/plane/releases/latest/download/setup.sh +chmod +x setup.sh +./setup.sh +``` + +При запросе выбрать: **1 (Install)** для архитектуры x86/AMD64. +После установки выбрать: **8 (Exit)**. + +Это создаст папку `plane-app/` с `docker-compose.yaml` и `plane.env`. + +### 3. Настроить plane.env + +Отредактировать файл `/home/slin/plane-selfhost/plane-app/plane.env`: + +```bash +# Порт +LISTEN_HTTP_PORT=8091 + +# URL (IP mva154) +WEB_URL=http://82.22.50.71:8091 +CORS_ALLOWED_ORIGINS=http://82.22.50.71:8091 + +# Лимит файлов +FILE_SIZE_LIMIT=20 + +# Secret key — сгенерировать случайный 50-символьный +SECRET_KEY=$(openssl rand -hex 25) +``` + +Остальные параметры оставить по умолчанию (встроенный Postgres, Redis, MinIO). + +### 4. Запустить Plane + +```bash +cd /home/slin/plane-selfhost +./setup.sh +# выбрать 2 (Start) +``` + +Дождаться запуска всех контейнеров (~2-5 минут, скачает образы). + +### 5. Проверить что работает + +```bash +# Все контейнеры должны быть Up +docker ps | grep plane + +# Проверить HTTP +curl -s -o /dev/null -w "%{http_code}" http://localhost:8091/ +# Должно быть 200 или 302 +``` + +### 6. Добавить в nginx (если есть конфиг) + +Проверить есть ли nginx на mva154: +```bash +nginx -v 2>/dev/null || echo "no nginx" +ls /etc/nginx/sites-enabled/ 2>/dev/null +``` + +Если nginx есть — добавить location `/plane/` или отдельный server block для порта 8091. +Если нет — Plane доступен напрямую по `http://82.22.50.71:8091`. + +--- + +## Ожидаемые контейнеры после установки + +``` +plane-proxy — nginx reverse proxy (слушает 8091) +plane-web — Next.js фронтенд +plane-api — Django REST API +plane-worker — Celery worker +plane-beat-worker — Celery Beat (планировщик) +plane-migrator — миграции БД (завершится и остановится) +plane-db — PostgreSQL 15 +plane-redis — Redis 7 +plane-minio — MinIO (S3 хранилище файлов) +``` + +--- + +## Финальная проверка + +1. `docker ps` — все контейнеры `Up` (кроме plane-migrator который `Exited 0`) +2. `curl -I http://localhost:8091/` — HTTP 200 или 302 +3. Открыть в браузере `http://82.22.50.71:8091` — должна появиться страница регистрации Plane + +--- + +## Что НЕ делать + +- Не использовать `prime-cli` / `prime.plane.so` — это Commercial Edition +- Не менять порт PostgreSQL/Redis (используем встроенные) +- Не трогать другие сервисы на mva154 (noisemap 5555, snowbike 5556/5557) +- Не открывать порт 8091 в firewall без команды Славы + +--- + +## Результат — отчёт + +По завершении написать отчёт: +- Версия Plane установлена +- URL доступа +- Список запущенных контейнеров с `docker ps` +- Результат `curl -I http://localhost:8091/` +- Путь к plane.env: `/home/slin/plane-selfhost/plane-app/plane.env`