安装
反向代理
先配好反向代理,再加探针。安装命令里的地址取自你访问面板时的地址。用 http://IP:17986
的话 SECRET 会明文过公网。
方案一:Cloudflare 隧道
不需要公网 IP、不需要开端口、自带 HTTPS。NAT 小鸡首选。
# 面板所在机器上
docker run -d --name cloudflared --restart unless-stopped \
--network host cloudflare/cloudflared:latest \
tunnel --no-autoupdate run --token <你的 TUNNEL TOKEN>bash在 Cloudflare Zero Trust 后台创建 Tunnel,把 probedeck.你的域名 指到 http://127.0.0.1:17986。
优点:不用管证书、端口、防火墙。缺点:多一跳,延迟略高。
方案二:Caddy
自动申请证书,一行搞定。适合有域名和公网 IP 的机器。
probedeck.example.com {
reverse_proxy 127.0.0.1:17986
# WSS 长连接需要关掉缓冲
flush_interval -1
}caddyfilecaddy runbash方案三:Nginx
server {
listen 443 ssl http2;
server_name probedeck.example.com;
ssl_certificate /etc/letsencrypt/live/probedeck.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/probedeck.example.com/privkey.pem;
location / {
proxy_pass http://127.0.0.1:17986;
proxy_http_version 1.1;
# WebSocket 升级:实时推送依赖它,缺了会退化成轮询
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# 长连接不要被过早掐断
proxy_read_timeout 300s;
proxy_send_timeout 300s;
proxy_buffering off;
}
}nginx四项必需:proxy_http_version 1.1、Upgrade / Connection 头、proxy_buffering off、足够长的 proxy_read_timeout。少任何一项,页面能开但实时数据不刷新,或连接几十秒后掉线。
验证
# 1. 面板能通
curl -I https://probedeck.example.com/
# 2. API 正常
curl -s https://probedeck.example.com/api/config | head -c 200
# 3. HTTPS 没降级、没被代理改成 http
curl -sI https://probedeck.example.com/ | grep -i strict-transportbash浏览器打开面板,指标应该每秒跳动。不跳就是 WebSocket 没通,回看上面四项。
在 GitHub 上修改这一页最后更新 2026-09-25