ProbeDeck

安装

Docker 部署

compose

services:
  probedeck:
    image: ghcr.io/gg949/probedeck:latest
    container_name: probedeck
    restart: unless-stopped
    ports:
      # 左侧是宿主机端口(对外访问用),默认 17986
      - "${HOST_PORT:-17986}:17986"
    environment:
      # API_SECRET 可不设置:首次启动自动生成
      # API_SECRET: "改成你自己的密钥"
      # 地区自动识别:maxmind(默认)/ ipinfo(在线)/ off(关闭)
      GEOIP_PROVIDER: "maxmind"
    volumes:
      # 项目专属数据目录(自动创建)
      - /opt/probedeck/data:/app/data
yaml

API_SECRET 是探针上报密钥 + 管理面板初始密码。从旧部署迁移探针时才需要自己设,保持一致即可让已有探针继续上报。

docker run

docker run -d --name probedeck --restart unless-stopped \
  -p 17986:17986 -v /opt/probedeck/data:/app/data \
  ghcr.io/gg949/probedeck:latest
bash

从源码构建(可选)

镜像里没有编译步骤,直接用预构建镜像即可。需要改代码时:

git clone https://github.com/gg949/ProbeDeck.git
cd ProbeDeck
npm ci
npm run build          # 构建前端到 dist/
npm start              # 直接跑,无需 Docker
bash

从源码跑需要 Node.js ≥ 20。

升级

compose 部署:

docker compose pull && docker compose up -d
bash

docker run 部署:

docker pull ghcr.io/gg949/probedeck:latest
docker stop probedeck && docker rm probedeck
docker run -d --name probedeck --restart unless-stopped \
  -p 17986:17986 -v /opt/probedeck/data:/app/data \
  ghcr.io/gg949/probedeck:latest
bash

数据都在 /opt/probedeck/data 里,删容器不影响;挂载用的是完整路径,任何目录执行都不会挂错。升级前建议先备份。

健康检查

镜像内置 HEALTHCHECK,访问 /api/config,返回非 5xx 视为存活。不用自己配。

换端口

# 改 compose 里的 ports 左边数字,或启动时传
HOST_PORT=8080 docker compose up -d
bash

换端口后探针不用重装——探针连的是面板地址,不是端口。除非你同时改了面板地址,那已有的探针要重新复制安装命令。

卸载面板

docker stop probedeck && docker rm probedeck
docker rmi ghcr.io/gg949/probedeck:latest     # 可选
rm -rf /opt/probedeck/data                     # 数据和配置都在这里
bash

数据全部集中在 /opt/probedeck/data,整个删掉即清净,没有别的东西留在机器上。

在 GitHub 上修改这一页最后更新 2026-09-25