Initial commit: VPN panel on Go, PostgreSQL 17, Docker, Xray-core

This commit is contained in:
vpn-panel
2026-05-21 18:55:14 +03:00
commit 3c2f5226d1
27 changed files with 1778 additions and 0 deletions
+75
View File
@@ -0,0 +1,75 @@
# VPN Panel
Панель управления VPN на базе [Xray-core](https://github.com/XTLS/Xray-core).
**Репозиторий:** https://git.evilfox.cc/test/vpn-panel.git
**Стек:** Go · Docker · PostgreSQL 17
## Возможности
- Главная страница с обзором панели
- Регистрация **одного** администратора (при первом запуске)
- Интерактивный установщик (БД, домен, админ)
- Готовый `docker-compose` с PostgreSQL 17
## Требования
- Linux-сервер (Ubuntu 22.04+ / Debian 12+ рекомендуется)
- Docker 24+ и Docker Compose v2
- Домен (опционально, для HTTPS через reverse proxy)
- Git
## Развёртывание на сервере
Полная инструкция: **[DEPLOY.md](DEPLOY.md)**
### Кратко
```bash
git clone https://git.evilfox.cc/test/vpn-panel.git
cd vpn-panel
docker compose up -d postgres
go run ./cmd/install # или ./install после сборки
docker compose up -d --build
```
Панель: `http://ВАШ_ДОМЕН:8080`
## Локальная разработка
```bash
docker compose up -d postgres
go run ./cmd/install
go run ./cmd/panel
```
## Структура
```
cmd/panel/ — веб-сервер панели
cmd/install/ — CLI установщик
internal/ — конфиг, БД, handlers, auth
web/ — HTML шаблоны и CSS
docker-compose.yml
```
## Переменные окружения
| Переменная | Описание |
|----------------|-----------------------------------|
| `APP_PORT` | Порт HTTP (в Docker: 8080) |
| `APP_DOMAIN` | Домен панели |
| `DATABASE_URL` | Строка подключения PostgreSQL |
| `SECRET_KEY` | Ключ подписи сессий |
| `INSTALLED` | `true` после установки |
## Xray-core
Ядро прокси — [XTLS/Xray-core](https://github.com/XTLS/Xray-core). Интеграция управления нодами и конфигами — следующий этап.
## Лицензия
MIT