Nginx + FRP + Easytier 三合一可视化管理面板 | 5 分钟上手
Docker 和 Docker ComposeNginx(宿主机或容器均可)mkdir -p /opt/nginx-manager/templates
cd /opt/nginx-manager
将以下 5 个文件 放入 /opt/nginx-manager/ 目录:
/opt/nginx-manager/
├── Dockerfile
├── docker-compose.yml
├── app.py
├── requirements.txt
└── templates/
└── index.html
| 修改项 | 说明 |
|---|---|
ports | 面板访问端口,默认 9000:5000 |
| FRP 挂载路径 | 改为实际 frp 配置目录 飞牛 frpc: /vol1/1000/docker/frpc:/etc/frp阿里云 frps: /opt/frps:/etc/frp |
FRP_CONTAINER | frps 或 frpc |
| Easytier 挂载路径 | 改为实际 easytier 配置目录 |
EASYTTER_CONTAINER | 默认 easytier |
volumes 和 environment 行即可。app.py 默认使用 nsenter 方式(Nginx 在宿主机)。
reload_nginx 函数:# 改为 docker exec 方式
subprocess.run(['docker', 'exec', 'nginx', 'nginx', '-t'], ...)
subprocess.run(['docker', 'exec', 'nginx', 'nginx', '-s', 'reload'], ...)
sudo docker compose up -d --build
浏览器访问:http://<服务器IP>:9000
| 默认账号 | 默认密码 |
|---|---|
admin | admin123 |
| 问题 | 解决方法 |
|---|---|
| 添加站点后不生效 | 点击面板「重载 Nginx」按钮,或终端执行 sudo systemctl reload nginx |
| 域名被抢端口 | 在 nginx.conf 的 http 块中添加:server_names_hash_bucket_size 4096; |
| 飞牛管理界面一直转圈 | 需要 WebSocket 支持,手动补配置:proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade"; |
| GitHub 下载 acme.sh 很慢 | 先在阿里云 ECS 下载,再 scp 到飞牛 NAS |
| 面板重载按钮无效 | 终端执行 sudo systemctl reload nginx 代替 |
— Nginx-Manager 部署指南 —