@@ -0,0 +1,51 @@
|
|||||||
|
# VPN Panel
|
||||||
|
|
||||||
|
Админ-панель VPN на Go + PostgreSQL 17. Готово к деплою в **Dokploy** через Docker Compose.
|
||||||
|
|
||||||
|
## Стек
|
||||||
|
|
||||||
|
- Go 1.23 (веб-админка)
|
||||||
|
- PostgreSQL 17
|
||||||
|
- Docker Compose
|
||||||
|
|
||||||
|
## Быстрый старт (Dokploy / Docker)
|
||||||
|
|
||||||
|
1. Скопируйте `.env.example` → `.env` и задайте пароли.
|
||||||
|
2. В Dokploy создайте приложение типа **Docker Compose**, укажите этот репозиторий.
|
||||||
|
3. Deploy — поднимутся сервисы `app` и `postgres`.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker compose up -d --build
|
||||||
|
```
|
||||||
|
|
||||||
|
Панель: `http://localhost:8080`
|
||||||
|
|
||||||
|
## Авторизация админа (из `.env`)
|
||||||
|
|
||||||
|
| Переменная | Значение по умолчанию |
|
||||||
|
|---|---|
|
||||||
|
| `ADMIN_EMAIL` | `admin@panel.local` |
|
||||||
|
| `ADMIN_PASSWORD` | `Admin123!ChangeMe` |
|
||||||
|
| `ADMIN_NAME` | `Administrator` |
|
||||||
|
|
||||||
|
При первом запуске админ создаётся автоматически из этих переменных.
|
||||||
|
|
||||||
|
## Протоколы (seed)
|
||||||
|
|
||||||
|
WireGuard, OpenVPN, VLESS, VMess, Trojan, Shadowsocks, Hysteria2 — можно включать/выключать в админке.
|
||||||
|
|
||||||
|
## Локальная разработка без Docker
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# нужен локальный Postgres 17 и .env с POSTGRES_HOST=localhost
|
||||||
|
go mod tidy
|
||||||
|
go run ./cmd/server
|
||||||
|
```
|
||||||
|
|
||||||
|
## Эндпоинты
|
||||||
|
|
||||||
|
- `/` — главная
|
||||||
|
- `/login` — вход
|
||||||
|
- `/admin` — дашборд
|
||||||
|
- `/admin/protocols` — протоколы
|
||||||
|
- `/health` — healthcheck
|
||||||
Reference in New Issue
Block a user