From 6e05a366c9518d30d77d5d1b2fb003c1c85dc18f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=91=D0=BE=D0=B1=D1=8B=D1=80=D0=B5=D0=B2=20=D0=90=D0=BD?= =?UTF-8?q?=D0=B4=D1=80=D0=B5=D0=B9?= Date: Tue, 8 Sep 2026 11:26:00 +0300 Subject: [PATCH] docs: add PROJECT_INDEX.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Указатель проекта по регламенту синхронизации: пути, состав репозитория, порты и переменные, известные грабли, текущее состояние. Co-Authored-By: Claude Opus 5 --- PROJECT_INDEX.md | 68 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 PROJECT_INDEX.md diff --git a/PROJECT_INDEX.md b/PROJECT_INDEX.md new file mode 100644 index 0000000..71f46eb --- /dev/null +++ b/PROJECT_INDEX.md @@ -0,0 +1,68 @@ +# PROJECT_INDEX — amnezia_web-PRO + +Указатель проекта. Обновляется в конце каждой законченной работы вместе с +заметкой `09. История решений и грабли` и пушем в GitHub. + +## Где что лежит + +| Что | Где | +|---|---| +| Папка проекта | `/Volumes/ssd/Мои проекты/amnezia_web-PRO/` | +| Заметки | Apple Notes → `МОИ ПРОЕКТЫ` → папка `amnezia_web-PRO` | +| GitHub (публичный) | https://github.com/andrey271192/amnezia_web-PRO | +| Ветка прода | `main` | +| Тестовая копия рядом | `/Volumes/ssd/Мои проекты/amnezia_web-PRO_test/` | + +Путь `/Volumes/andrey/Мои проекты/...` из старого промпта синхронизации **не существует** — +актуальная копия только на `/Volumes/ssd`. + +## Состав репозитория + +| Путь | Что это | +|---|---| +| `server.js` | Бэкенд панели (Node), порт контейнера 3980 | +| `public/` | Фронтенд админки | +| `landing/` | Публичная страница для приглашённых: `index.html`, `styles.css`, `nginx.conf`, `Dockerfile`, `admin-port.js` (порт админки для кнопки, пересобирается установщиком) | +| `Dockerfile` | Образ `amnezia-admin:latest` | +| `scripts/install.sh` | Установщик: сборка образов, запуск контейнеров, диагностика AmneziaWG | +| `scripts/uninstall.sh` | Снос панели и лендинга | +| `scripts/awg-instance.sh` | Работа с инстансами AmneziaWG | +| `scripts/clients-meta.mjs` | Снимок метаданных клиентов (имена, даты) поверх `clientsTable` | +| `scripts/test-clients-meta.mjs` | Тест к нему | +| `scripts/warp-amnezia.sh` | Обвязка WARP | +| `docs/panel-guide.md` | Руководство по панели | +| `README.md` | Порты, переменные окружения, установка, обновление | + +Незакоммиченные разовые скрипты разбора в корне (`audit2.py`, `audit_conf.py`, +`check_conf.py`, `check_garbage.py`, `test_create.py`) — отладочные, в git не входят. + +## Установка + +```bash +curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo bash +``` + +Первый вход: `admin` / `admin`, пароль сменить сразу. + +## Порты и ключевые переменные + +| Переменная | По умолчанию | Смысл | +|---|---|---| +| `HOST_PORT` | `8080` | Админ-панель | +| `LANDING_PORT` | `80` | Публичная страница | +| `SKIP_LANDING` | `0` | `1` — не поднимать лендинг | +| `LANDING_CONTAINER` | `amnezia-web-landing` | Имя контейнера лендинга | +| `CONTAINER_NAME` | `amnezia-admin` | Имя контейнера панели | + +## Грабли, которые стоят времени + +- **Контейнеры переживают переустановку.** Всё поднимается с `--restart unless-stopped`. + `SKIP_LANDING=1` на повторной установке не отключал лендинг, пока установщик не начал + сносить старый контейнер в ветке пропуска (`7b92bfb`, 08.09.2026). Проверка: + `docker ps --filter name=amnezia-web-landing`. +- **Коммиты сами в контейнер не попадают** — нужна пересборка образа, см. README. +- Разбор остальных случаев — в заметке `09. История решений и грабли`. + +## Состояние + +- HEAD `7b92bfb` (08.09.2026), совпадает с `origin/main`.