feat: add dockerized 3proxy control plane backend

This commit is contained in:
2026-04-02 00:06:26 +03:00
parent ff2bc8711b
commit 25f6beedd8
20 changed files with 3076 additions and 174 deletions

View File

@@ -4,29 +4,49 @@ Control panel and runtime bundle for 3proxy in Docker.
## Current focus
The first delivered slice is the UI foundation:
The project now includes both the UI and the first backend/runtime slice:
- login screen with hardcoded panel credentials
- dashboard, users, and system views
- domain utilities and tests for quota, status, and proxy-link behavior
- project workflow docs for autonomous delivery
- Express-based control plane API
- generated `3proxy.cfg` from persisted panel state
- runtime manager for start/restart/reload
- Docker image that builds the panel and compiles 3proxy in-container
- panel views for dashboard, users, and system
- edge-case-focused frontend and backend tests
## Local run
```bash
npm install
npm run dev
npm run dev:server
```
Default panel credentials for the current UI prototype:
Default panel credentials:
- login: `admin`
- password: `proxy-ui-demo`
## Docker run
```bash
docker compose up --build
```
Published ports:
- panel: `3000`
- socks main: `1080`
- socks lab: `2080`
- http proxy: `3128`
- 3proxy admin: `8081`
Runtime state is persisted in the Docker volume `3proxyui_3proxy-runtime`.
## Scripts
```bash
npm run dev
npm run dev:server
npm run build
npm run test
npm run test:run