From ff3659d72e55499c5070fd6ffd5e007d867e68f6 Mon Sep 17 00:00:00 2001 From: host Date: Sun, 9 Aug 2026 20:53:05 +0300 Subject: [PATCH] =?UTF-8?q?docs:=20changelog=200.4.0=20=E2=80=94=20=D1=83?= =?UTF-8?q?=D0=B4=D0=B0=D0=BB=D1=91=D0=BD=20clone=5Flxc,=20=D0=BF=D0=B5?= =?UTF-8?q?=D1=80=D0=B5=D0=BF=D0=B8=D1=81=D0=B0=D0=BD=20create=5Flxc=20?= =?UTF-8?q?=D0=BD=D0=B0=204=20=D1=88=D0=B0=D0=B3=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6f31977..8da9bc8 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,7 @@ Proxmox VE через API. Backend — FastAPI (Python), frontend — React (Vit - Управления сетью/IP-пулами (LXC получает адрес по DHCP, для VM выдаётся из клонированного шаблона) - Веб-консоли (VNC) — для доступа к виртуальным машинам используйте SSH - Alembic-миграций (сейчас `create_all()` — для прода рекомендуется добавить) +- Создания LXC из существующего контейнера по VMID — только из архива .tar.zst на storage ## 1. Подготовка Proxmox @@ -51,6 +52,12 @@ Datacenter → Permissions → API Tokens → добавить токен для например `debian-12-standard_12.7-1_amd64.tar.zst`. В панели укажите его как `source_template` в формате `local:vztmpl/имя_файла.tar.zst`. +Панель создаёт LXC из такого архива в 4 шага: +1. `POST /nodes/{node}/lxc` с `ostemplate`, `start=0` (без запуска). +2. `POST /nodes/{node}/lxc/{vmid}/passwd` — установка root-пароля. +3. `PUT /nodes/{node}/lxc/{vmid}/resize` — создание rootfs нужного размера. +4. `POST /nodes/{node}/lxc/{vmid}/status/start` — запуск контейнера. + ## 2. Настройка backend Скопируйте `backend/.env.example` в `backend/.env` и заполните: @@ -68,7 +75,7 @@ PVE_TOKEN_VALUE=<значение токена> ## 3. Настройка CORS -В `backend/.env` укажите `ALLOW_ORIGINS` — список доменов через запятую, с которых +В `backend/.env` укажите `ALLOW_ORIGINS` — список доменов через запятую, с которыми фронтенд будет обращаться к API. По умолчанию это `http://localhost:5173,http://127.0.0.1:5173`. Для прода обязательно укажите конкретный домен: @@ -156,6 +163,15 @@ docker-compose.yml ## Changelog +### 0.4.0 +- 🗑 **Удалено**: создание LXC путём клонирования существующего контейнера по VMID (`clone_lxc`). + LXC теперь создаётся ТОЛЬКО из архивного шаблона (`vztmpl/*.tar.zst`). +- 🛠 **Переписан `create_lxc`**: 4 явных шага — `ostemplate` → `passwd` → `resize` → `start`. + Раньше всё делалось одним POST-запросом с кучей параметров, теперь каждый шаг — отдельный + вызов Proxmox API, что упрощает отладку и делает процесс прозрачным. +- 🛠 Убран дублирующий `guest_action(start)` после создания LXC — старт теперь выполняется + внутри `create_lxc`. + ### 0.3.0 - 🗑 Удалена VNC-консоль — для доступа к VM используйте SSH по IP из дашборда - 🛠 Упрощена nginx-конфигурация (убран WebSocket-прокси для VNC) @@ -174,4 +190,4 @@ docker-compose.yml - 🛠 Backend запускается от non-root пользователя - 🛠 Multi-stage Dockerfile для backend (меньше размер образа) - 🛠 Добавлены healthcheck'и у всех сервисов в docker-compose -- 🛠 Структурированное логирование через `logging` \ No newline at end of file +- 🛠 Структурированное логирование через `logging`