feat: Добавлена веб-панель управления VPN-прокси и Docker-конфигурация.

This commit is contained in:
2025-12-27 20:01:38 +03:00
parent 6a9d454d2a
commit b65b48d82b
8 changed files with 785 additions and 374 deletions

View File

@@ -40,16 +40,13 @@
## 📦 Что внутри?
| Файл | Описание простыми словами |
| ------------------------ | ------------------------------------------------------------------------ |
| `web_server.py` | Веб-интерфейс для управления через браузер |
| `web/index.html` | Страница с красивым интерфейсом |
| `client.template.json` | Шаблон настроек — как "бланк анкеты", который заполняется вашими данными |
| `gen-client-from-url.sh` | Скрипт, который берёт вашу VPN-ссылку и заполняет "анкету" |
| `menu.sh` | Интерактивное меню для выбора сервера из списка (консольная версия) |
| `entrypoint.sh` | Главный скрипт запуска с функцией авто-обновления |
| `Dockerfile.singbox` | Инструкция для создания изолированного VPN-приложения (контейнера) |
| `docker-compose.yml` | Файл для удобного запуска одной командой |
| Файл | Описание простыми словами |
| ----------------------- | ------------------------------------------------------------------ |
| `web/server.py` | Веб-интерфейс для управления через браузер |
| `web/index.html` | Страница с красивым интерфейсом |
| `docker/entrypoint.sh` | Главный скрипт запуска контейнера |
| `docker/Dockerfile` | Инструкция для создания изолированного VPN-приложения (контейнера) |
| `docker-compose.yml` | Файл для удобного запуска одной командой |
---
@@ -57,7 +54,9 @@
### Что вам понадобится
1. **VLESS-ссылка** — получите её от вашего VPN-провайдера. Она начинается с `vless://...`
1. **URL подписки** или **VLESS-ссылка** — получите её от вашего VPN-провайдера
- Подписка: формат sing-box
- VLESS: начинается с `vless://...`
2. **Docker** — программа для запуска изолированных приложений
- [Скачать Docker Desktop](https://www.docker.com/products/docker-desktop/) (бесплатно)
@@ -88,9 +87,12 @@ docker compose up -d
### После запуска
1. **Откройте веб-интерфейс**: http://localhost:3456
2. **Вставьте вашу VLESS-ссылку** (vless://)
3. **Нажмите "Применить"**
4. Готово! Прокси работает на порту **8082**
2. **Выберите режим**:
- **📡 Подписка**: вставьте URL подписки, нажмите «Загрузить серверы», выберите сервер и нажмите «Применить»
- **🔑 VLESS Ключ**: вставьте VLESS-ссылку и нажмите «Применить»
3. Готово! Прокси работает на порту **8082**
> 💡 **Подписка сохраняется** между перезагрузками контейнера — URL и выбранный сервер хранятся в папке `data/`
---
@@ -112,7 +114,7 @@ docker compose build --no-cache
docker compose up -d
```
> 💡 **Примечание:** после пересборки нужно снова применить VPN-ссылку через веб-интерфейс http://localhost:3456
> 💡 **Примечание:** подписка сохраняется и будет автоматически загружена при открытии веб-интерфейса http://localhost:3456
---
@@ -256,37 +258,17 @@ curl -x http://127.0.0.1:8082 https://ipinfo.io/json
## 🔧 Для продвинутых пользователей
### Запуск с VPN-ссылкой при старте
Если хотите сразу применить ссылку при запуске (без веб-интерфейса):
```bash
VLESS_URL="vless://..." docker compose up -d
```
### Запуск без Docker
Если вы не хотите использовать Docker:
1. Установите [sing-box](https://sing-box.sagernet.org/)
2. Сгенерируйте конфигурацию:
```bash
./gen-client-from-url.sh "vless://..." client.json
```
2. Скопируйте конфигурацию из веб-интерфейса подписки и сохраните в `client.json`
3. Запустите:
```bash
sing-box run -c client.json
```
### Автоматическое обновление конфигурации
Контейнер автоматически обновляет конфигурацию каждые 60 минут. Чтобы изменить интервал, добавьте в `docker-compose.yml`:
```yaml
environment:
UPDATE_INTERVAL: 120 # обновлять каждые 120 минут
```
---
## 📚 Словарь терминов