Skip to content

0xNetuser/flux-panel

Repository files navigation

Flux Panel

A traffic forwarding and proxy management panel.


Note

升级到2.1.0及以上版本时,后台中的节点更新功能无法使用,需要手动先卸载再更新

建议升级前,记下节点的卸载命令,面板成功升级后再重新安装

Deployment

Requires Docker. Supports amd64 and arm64 architectures.

Option 1: Install Script (Recommended)

curl -fsSL https://raw.githubusercontent.com/0xNetuser/flux-panel/main/panel_install.sh -o panel_install.sh && chmod +x panel_install.sh && ./panel_install.sh

The script provides an interactive menu:

Option Description
1. Install Installs Docker, generates random credentials, downloads config, starts services
2. Update Pulls latest images, runs database migrations, restarts services
3. Uninstall Removes containers, volumes, and config files
4. Backup Exports MySQL database backup to current directory

Option 2: Manual Docker Compose

1. Download config

mkdir -p flux-panel && cd flux-panel
curl -fsSL https://github.com/0xNetuser/flux-panel/releases/latest/download/docker-compose.yml -o docker-compose.yml

2. Create .env file

DB_NAME=flux_db
DB_USER=flux_user
DB_PASSWORD=<random-password>

# JWT secret (must be set, otherwise sessions expire on restart)
JWT_SECRET=<random-password>

# Panel port (default 6366)
PANEL_PORT=6366

# Optional: IPv6 support
# ENABLE_IPV6=true

# Optional: CORS allowed origins (comma-separated, allows all if not set)
# ALLOWED_ORIGINS=https://panel.example.com

Use openssl rand -base64 32 to generate random passwords.

3. Start

docker compose up -d

4. Get admin password

A random admin password is generated on first launch:

docker logs go-backend 2>&1 | grep "password"
Field Value
URL http://<server-ip>:6366
Username admin_user
Password Check startup logs

IPv6 Configuration

To enable IPv6 support, set ENABLE_IPV6=true in .env and ensure Docker has IPv6 enabled:

# Edit /etc/docker/daemon.json
{
  "ipv6": true,
  "fixed-cidr-v6": "fd00::/80"
}

# Restart Docker
systemctl restart docker

Node Deployment

Recommended: Add a node in the panel's "Node Management" page, click "Install", and copy the generated command to the node server.

Docker

# Use the command generated by the panel
docker run -d --network=host --restart=unless-stopped --name flux-node \
  -e PANEL_ADDR=http://<panel-ip>:<panel-port> \
  -e SECRET=<node-secret> \
  0xnetuser/node:latest

Script (systemd service)

The install script is generated by the panel with all parameters pre-configured. Copy and run on the node server.


Environment Variables

Panel (.env)

Variable Required Default Description
DB_NAME Yes - MySQL database name
DB_USER Yes - MySQL username
DB_PASSWORD Yes - MySQL password
JWT_SECRET Yes - JWT signing key
PANEL_PORT No 6366 Panel access port
ENABLE_IPV6 No false Enable Docker network IPv6
ALLOWED_ORIGINS No * CORS allowed origins (comma-separated)

Node

Variable Required Description
PANEL_ADDR Yes Panel address, e.g. http://1.2.3.4:6366
SECRET Yes Node communication secret, auto-generated when adding a node

Disclaimer

This project is for personal learning and research purposes only.

All risks arising from the use of this project are borne solely by the user, including but not limited to:

  • Service disruption caused by misconfiguration or incorrect usage
  • Network attacks, bans, or abuse resulting from the use of this project
  • Data leaks, resource consumption, or losses due to server compromise
  • Any legal liability arising from violation of local laws and regulations

This project is an open-source traffic forwarding tool intended exclusively for lawful and compliant use. Users must ensure their usage complies with the laws and regulations of their country or region.

The author assumes no responsibility for any legal liability, financial loss, or other consequences arising from the use of this project.

It is prohibited to use this project for any illegal or unauthorized activities.

If you do not agree to the above terms, please stop using this project immediately.


License

Apache License 2.0

About

哆啦A梦面板重制版

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors