67 lines
1.4 KiB
Markdown
67 lines
1.4 KiB
Markdown
# xboard-node
|
|
|
|
Dedicated node backend for [Xboard](https://github.com/cedar2025/Xboard). Fully compatible with Xboard API.
|
|
|
|
> **Disclaimer**: This project is for educational and learning purposes only.
|
|
|
|
## Overview
|
|
|
|
| Item | Description |
|
|
| --- | --- |
|
|
| Role | Xboard-compatible node backend |
|
|
| Kernels | `sing-box` (default), `xray-core` |
|
|
| Protocols | V2Ray family, Trojan, Shadowsocks, Hysteria2, TUIC, Naive |
|
|
| Modes | Panel-managed mode, `standalone` mode |
|
|
| Sync | WebSocket push, REST polling/report fallback |
|
|
| User controls | Per-user speed limit, device limit, alive IP tracking |
|
|
| Runtime ops | Hot user add/remove/update |
|
|
| Reporting | Traffic, online/alive-IP state, CPU, memory, swap, disk, connection count |
|
|
| Deployment | Single Go service, Docker, Docker Compose |
|
|
|
|
## Install
|
|
|
|
### Docker
|
|
```bash
|
|
docker run -d --restart=always --network=host \
|
|
-e apiHost=https://panel.com \
|
|
-e apiKey=TOKEN \
|
|
-e nodeID=1 \
|
|
ghcr.io/cedar2025/xboard-node:latest
|
|
```
|
|
|
|
### Docker Compose
|
|
|
|
**1. Get the `compose/` directory**
|
|
|
|
```bash
|
|
git clone -b compose --depth 1 https://github.com/cedar2025/xboard-node.git
|
|
cd xboard-node
|
|
```
|
|
|
|
**2. Edit local config**
|
|
|
|
```bash
|
|
vim config/config.yml
|
|
# edit config/config.yml — set panel.url, panel.token, panel.node_id
|
|
```
|
|
|
|
**3. Start**
|
|
|
|
```bash
|
|
docker compose up -d
|
|
```
|
|
|
|
## Configuration
|
|
|
|
`config.yml`:
|
|
```yaml
|
|
panel:
|
|
url: "https://panel.com"
|
|
token: "token"
|
|
node_id: 1
|
|
```
|
|
|
|
## License
|
|
|
|
MPL-2.0.
|