Spot Monitor

安装

Docker 部署

docker run -d --name monitor --restart unless-stopped \
  -p 127.0.0.1:28080:28080 -v monitor-data:/data -e TZ=Asia/Shanghai \
  ghcr.io/spot-probe/monitor
bash

镜像发布在 GHCR(ghcr.io/spot-probe/monitor),支持 x86_64 与 aarch64。

  • 127.0.0.1:28080:端口只对本机开放,域名由反向代理接进来,上游写 127.0.0.1:28080
  • TZ:hub 所在的时区,必须设,见下方说明
  • /data:数据库和主题都在这里

首次启动的应急密码在日志里:

docker logs monitor | grep Emergency
bash

忘了怎么办见登录与安全。

今日流量、月度周期和到期日都按本地日期切换。不设 TZ 就按 UTC 算,东八区要到早上 8 点才跨日,而且没有任何报错。

compose

services:
  monitor:
    image: ghcr.io/spot-probe/monitor
    container_name: monitor
    restart: unless-stopped
    # 只对本机开放,域名由反代接进来
    ports:
      - "127.0.0.1:28080:28080"
    environment:
      TZ: Asia/Shanghai
    volumes:
      - monitor-data:/data
 
volumes:
  monitor-data:
yaml

数据放在指定目录

容器以 uid 65534 运行,挂载的目录要先改属主,否则写不进去:

# 换成你想放数据的目录
sudo mkdir -p /opt/monitor-data
sudo chown 65534:65534 /opt/monitor-data
docker run -d --name monitor --restart unless-stopped \
  -p 127.0.0.1:28080:28080 -v /opt/monitor-data:/data -e TZ=Asia/Shanghai \
  ghcr.io/spot-probe/monitor
bash

升级

数据在数据卷里,删掉容器不影响。docker run 部署的:

# 拉取新镜像
docker pull ghcr.io/spot-probe/monitor
# 删除旧容器
docker rm -f monitor
# 再执行一遍当初的 docker run 命令
docker run -d --name monitor --restart unless-stopped \
  -p 127.0.0.1:28080:28080 -v monitor-data:/data -e TZ=Asia/Shanghai \
  ghcr.io/spot-probe/monitor
bash

compose 部署的,在 compose 文件所在目录执行:

docker compose pull monitor
docker compose up -d monitor
bash

agent 没有 Docker 镜像

agent 是常驻几 MiB 的静态二进制,要装的往往是资源最少的那批 VPS,为它引入一整套容器运行时并不划算。被监控的机器直接执行安装命令。

在 GitHub 上修改这一页最后更新 2026-10-02