logo NodeSeekbeta

不改 Nezha,新建 Komari:Docker + CF Tunnel 简洁部署

背景

我之前已经使用 Nezha 监控 一段时间,但发现一些痛点:

  • Nezha 默认只能查看 1 分钟的机器信息24 小时的延迟数据
  • 如果想通过公网访问,需要额外配置 Nginx 反代,过程繁琐。

Komari 原生支持 Cloudflare Tunnel (CF Tunnel),可以直接通过 Cloudflare 提供的隧道进行访问,免去手动配置反代的烦恼。

因此我的目标是:

  • 保留 Nezha(不修改、不影响现有部署);
  • 新增 Komari,通过 子域名 + Cloudflare Tunnel 部署。

官方文档参考


部署步骤

1. 准备 Docker Compose 文件

在服务器上新建 docker-compose.yml

version: '3.8'
services:
  komari:
    image: ghcr.io/komari-monitor/komari:latest
    container_name: komari
    ports:
      - "25774:25774"
    volumes:
      - ./data:/app/data
    environment:
      ADMIN_USERNAME: admin
      ADMIN_PASSWORD: 123456
      KOMARI_ENABLE_CLOUDFLARED: "true"
      # 在 Cloudflare Tunnel 中获取的 Token
      KOMARI_CLOUDFLARED_TOKEN: eyJXXXX
    restart: unless-stopped

2. 在 Cloudflare Zero Trust 创建 Tunnel

  1. 登录 Cloudflare Zero Trust

  2. 进入 Access → Tunnels
    进入 Tunnels

  3. 点击 Create a tunnel → 选择 Cloudflare → 复制生成的 Token
    创建 Tunnel

  4. 将复制的 Token 填写到 docker-compose.ymlKOMARI_CLOUDFLARED_TOKEN 字段。

  5. tunnel中对接的是容器里面的http:127.0.0.1:25774,这一部没有截图


3. 启动 Komari

在项目目录下执行:

docker compose up -d

启动后,Komari 会自动通过 Cloudflare Tunnel 建立连接,你可以在 Cloudflare 中为该 Tunnel 绑定一个 子域名(比如我的 https://komari.groovydeng.eu.org),即可在公网访问。


总结

通过 Docker Compose + Cloudflare Tunnel 部署 Komari,可以做到:

  • 免去额外的 Nginx/反代配置
  • 安全稳定地通过子域名访问监控面板;
  • 与现有 Nezha 监控 并行使用,互不影响。

我的komari探针

12
  • 直接用 cf 的 origin rules 规则就可以了吧

  • @Helmet0959 #2 可以研究研究,比你这个方便,我的 komari 就是用的 origin rules 回源端口的

  • 部署好了之后怎么添加服务器啊佬 有和nezha一样的内种一键添加指令吗

  • @Eric86777 #4 发布于9/8/2025, 5:32:08 PM
    部署好了之后怎么添加服务器啊佬 有和nezha一样的内种一键添加指令吗

    有的,和哪吒大同小异。一键安装agent

  • 太麻烦,直接扔服务器上

  • 感谢分享,正好近期想换成komari玩玩

  • 学习

  • 没搞懂,你这是部署在家里云是吧
    直接丢服务器不简单吗

12

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有59948位seeker

🎉欢迎新用户🎉