6.5 KiB
🐳 Docker — Веб-интерфейс для управления VPN
Это продвинутый способ установки с красивым веб-интерфейсом. Для большинства пользователей рекомендуется использовать основной способ через PowerShell.
📖 Что это даёт?
- 🌐 Веб-интерфейс — управление через браузер на http://localhost:3456
- 📡 Подписки — автоматическое получение списка серверов
- 🔄 Переключение серверов — в один клик
- 💾 Сохранение настроек — URL и выбранный сервер сохраняются
🔧 Требования
Docker Desktop
- Скачайте: https://www.docker.com/products/docker-desktop/
- Установите и запустите
- Убедитесь, что иконка 🐳 есть в трее (панель задач)
💡 На Windows может потребоваться WSL2. Docker Desktop предложит его установить автоматически.
🚀 Установка
Шаг 1: Откройте терминал
Откройте PowerShell или Командную строку и перейдите в папку проекта:
cd путь\к\папке\vpn-proxy
Шаг 2: Соберите контейнер
docker compose build
Это создаст образ со всеми необходимыми компонентами. Выполняется один раз.
Шаг 3: Запустите
docker compose up -d
Флаг -d запускает контейнер в фоновом режиме.
Шаг 4: Откройте веб-интерфейс
Перейдите в браузере: http://localhost:3456
🌐 Использование веб-интерфейса
Режим подписки
- Вставьте URL подписки в поле "Подписка"
- Нажмите "Загрузить серверы"
- Выберите сервер из списка
- Нажмите "Применить"
Режим VLESS
- Перейдите на вкладку "VLESS Ключ"
- Вставьте VLESS-ссылку (
vless://...) - Нажмите "Применить"
💡 Настройки сохраняются в папке
data/и восстанавливаются при перезапуске.
🌐 Порты
| Порт | Назначение | URL |
|---|---|---|
3456 |
Веб-интерфейс | http://localhost:3456 |
8080 |
HTTP/SOCKS5 прокси | 127.0.0.1:8080 |
9090 |
API управления (внутренний) | — |
🔧 Изменение порта прокси
Если порт 8080 уже занят, можно запустить на другом порту (например, 8082):
Способ 1: Через переменную окружения (Mac/Linux)
PROXY_PORT=8082 docker compose up -d
Способ 2: Через переменную окружения (Windows PowerShell)
$env:PROXY_PORT=8082; docker compose up -d
Способ 3: Через .env файл (универсальный)
Создайте файл .env в корне проекта:
PROXY_PORT=8082
Затем запустите:
docker compose up -d
💡 URL подключения изменится на
http://127.0.0.1:8082иsocks5://127.0.0.1:8082
📋 Управление контейнером
| Действие | Команда |
|---|---|
| Посмотреть статус | docker ps |
| Посмотреть логи | docker logs --tail 50 sing-proxy |
| Остановить | docker compose stop |
| Запустить снова | docker compose start |
| Перезапустить | docker compose restart |
| Полностью удалить | docker compose down |
| Пересобрать | docker compose up -d --build |
🔄 Обновление
Если вы обновили код из репозитория:
# Остановить текущий контейнер
docker compose down
# Пересобрать с новыми изменениями
docker compose build --no-cache
# Запустить заново
docker compose up -d
💡 Подписка и настройки сохраняются в папке
data/и не потеряются.
⚙️ Настройка приложений
Для VS Code
{
"http.proxy": "http://127.0.0.1:8080",
"http.proxyStrictSSL": true
}
Для браузера
- Адрес:
127.0.0.1 - Порт:
8080 - Тип: HTTP или SOCKS5
❓ Проблемы и решения
Страница localhost:3456 не открывается
Причина: Контейнер не запущен.
# Проверьте статус
docker ps
# Если контейнера нет — запустите
docker compose up -d
"Connection refused"
Причина: VPN-ссылка не применена.
- Откройте http://localhost:3456
- Примените VLESS-ссылку или загрузите подписку
Медленное подключение
Попробуйте другой сервер в веб-интерфейсе — некоторые серверы могут быть перегружены.
⚠️ Ограничения Docker на Windows
-
UDP для Discord: Docker на Windows/macOS имеет проблемы с UDP ASSOCIATE для SOCKS5. Для Discord рекомендуется использовать нативную установку.
-
Для полной поддержки UDP используйте установку на Linux сервер с
network_mode: host.