diff --git a/docs/panel-guide.md b/docs/panel-guide.md index 26a29d4..48fd0fe 100644 --- a/docs/panel-guide.md +++ b/docs/panel-guide.md @@ -32,6 +32,8 @@ После переустановки старый `AWG_PROFILES` и сохранённые managed-инстансы могли указывать на один и тот же контейнер/конфиг с разными `id`. Начиная с **v1.2.32** панель дедуплицирует профили по `container + confPath + iface + clientsPath`, а также чистит дубли при чтении/сохранении `instances.json`. Обновите панель из GitHub и сделайте жёсткое обновление страницы. +Если проверка на сервере показывает два разных контейнера, например `amnezia-awg2` и `amnezia-awg`, с разными портами и разным числом клиентов — это не дубль, а два инстанса. Начиная с **v1.2.33** карточки используют реальное имя профиля (`label`), чтобы `AmneziaWG 2.0` и `AmneziaWG` не выглядели одинаково. + ## Лендинг не поднимается (порт 80 занят) При ошибке bind `:80` используйте при установке **`SKIP_LANDING=1`** или **`LANDING_PORT=8081`** — админка на `HOST_PORT` (например 8080) от этого не зависит. diff --git a/package-lock.json b/package-lock.json index 4185e97..9e218e5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "amnezia-admin", - "version": "1.2.32", + "version": "1.2.33", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "amnezia-admin", - "version": "1.2.32", + "version": "1.2.33", "license": "MIT", "dependencies": { "express": "^4.21.2" diff --git a/package.json b/package.json index 892c91c..140faf3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "amnezia-admin", - "version": "1.2.32", + "version": "1.2.33", "private": false, "description": "amnezia_web-PRO — веб-панель AmneziaWG: несколько инстансов, WARP, каскад/Endpoint, экспорт .conf (Docker)", "license": "MIT", diff --git a/public/app.js b/public/app.js index 591abcf..df20fa3 100644 --- a/public/app.js +++ b/public/app.js @@ -1482,6 +1482,7 @@ async function loadInstances() { } grid.innerHTML = list.map((i) => { const m = VARIANT_META[i.variant] || { icon: "🛡", title: i.variant, badge: "" }; + const title = i.label || m.title || i.variant || i.id; const status = i.running ? `● РАБОТАЕТ` : `● ОСТАНОВЛЕН`; @@ -1493,14 +1494,14 @@ async function loadInstances() { ? "" : `приложение Amnezia`; const delBtn = i.managed - ? `` + ? `` : ""; return `