哪吒 v1 部署笔记

AI-摘要
Yutian81 GPT
AI初始化中...
介绍自己 🙈
生成本文简介 👋
推荐相关文章 📖
前往主页 🏠
前往爱发电购买
哪吒 v1 部署笔记
雨天狂奔哪吒 v1 部署笔记
本文部署非官方版本,是 yumusb 大佬修改的版本,只需要一个域名,使用 cf argo 隧道反代。本文讲解部署全过程,不含哪吒面板的进阶设置,如有需要请参考官方文档。
相关资源
- 官方仓库:https://github.com/nezhahq/nezha
- 官方文档:https://nezha.wiki/index.html
- 本文部署所使用的仓库:https://github.com/yumusb/nezha-new
- ssh 工具:https://github.com/electerm/electerm
必须一个 cf 账号并注册 cf 隧道;必须一个 github 账号;必须一个托管在 cf 上的域名,下文以
222333.xyz为例;一台 vps,内存最好不要低于 512m
准备工作
Github 准备
- fork 上文列出的仓库 https://github.com/yumusb/nezha-new
- 设置 Github auth (非必须步骤,但是考虑安全性,建议设置)
- 登录 Github 后,依次点击:
右上角图像 → settings → 左下角 Developer settings → 左上角 OAuth Apps → 右上角 New OAuth App新建一个 OAuth 认证程序 - 依次填写以下内容,其他保持默认:
- Application name = 随意
- Homepage URL =
https://你计划用于登录面板的域名,完整示例:https://nezha.222333.xyz - Authorization callback URL = 哪吒面板认证回调地址,以 https 开头,在
https://你计划用于登录面板的域名后面加上/api/v1/oauth2/callback,完整示例:https://nezha.222333.xyz/api/v1/oauth2/callback - 记录
Client ID - 生成一个
Client secrets并记录
- 登录 Github 后,依次点击:
CF 准备
- 访问 Cloudflare One
- 依次点击:
左侧 网络 → Tunnels → 创建隧道,隧道类型选择Cloudflared,下一步,依次填写: - 隧道名称:随意,如
Nezha-V1 - 获取隧道 token:一串以
ey开头的很长的一段字符串,记录下来 - 添加公共主机名
- 子域名 = 随意,示例:
nezha - 域 = 选择你托管的域名,例如
222333.xyz - 路径 = 留空
- 服务类型 = HTTP
- URL = nginx:80
- 子域名 = 随意,示例:
开始部署
- 登录 vps,安装 docker 环境
1 | sudo wget -qO- https://get.docker.com/ | bash |
- 执行命令
docker --version验证 docker 环境是否安装成功 - 执行以下命令克隆项目到 vps
1 | git clone https://github.com/yumusb/nezha-new.git |
- 通过 ssh 自带的 sftp 工具,进入
/root/nezha-new目录,编辑以下文件并保存.env文件
1 | TUNNEL_TOKEN=eyJhIjoiMWFmODZjMzNiY # 改为 cf 隧道的 token 值 |
compose.yml文件,将最后一段的#全部删除,以开启自动备份
1 | # backup: |
- 依次执行以下命令
1 | cd /root/nezha-new |
- 进入 /root/nezha-new/data 目录
cd /root/nezha-new/data,修改config.yaml文件,在最后面加入以下内容,保存
1 | oauth2: |
- 依次运行一下命令,重启 docker 并检查 docker 运行状态
1 | sudo service docker restart |
基础设置
- 访问
https://nezha.222333.xyz,进入面板 - 首次登录输入默认的用户名(admin)和密码(admin)
- 依次点击
右上角头像 → 个人信息 → 更新个人资料,修改用户名和密码 - 点击 Oauth2 bindings 下面 github
bind,绑定 github 登录 - 重新登录哪吒面板,点击
右上角头像 → 系统设置,往下拉,找到Agent对接地址【域名/IP:端口】,填写nezha.222333.xyz:443(即你的哪吒面板域名:443 端口),并勾选Agent 使用 TLS 连接 - 访问
https://nezha.222333.xyz/dashboard,点击安装命令,选择对应系统,会生成 agent 客户端的一键安装脚本 - ssh 登录需要监控的 vps,粘贴上面生成的 agent 脚本,回车执行即可
需要注意的几点
- 系统设置里的
真实IP请求头建议保持默认,不要修改,网上的教程大多数是修改为CF-Connecting-IP或nz-realip,修改后会导致哪吒自带的web应用防火墙拦截你的 ip 导致无法访问面板。坏处是不设置真实 ip 请求头会导致无法识别访问者的真实 ip。由于我的教程已经开启了 github auth 验证,可以在个人信息设置中禁止使用密码登录,而只使用 github 登录,安全性有保障,真实 IP 请求头的设置就并非必要了 - 如果你因为设置了真实 IP 请求头而导致无法访问,不要急,ssh 登录部署面板的 vps,执行一下命令清理全部用户,从而重置设置
1 | sudo apt install sqlite3 # 安装 sqlite3 |
- 关于自动生成的 agent 命令,v0 和 v1 完全不同,v0 会对每个 agent 客户机生成一个 token,而 v1 只有一个 agent token,所有被监控端都使用一个 token,因此你可以将生成的安装命令保存起来,直接在新的 agent 机器上安装。我推荐的
electerm工具支持批量执行命令,先将需要安装的 vps 全部登录,然后在底部输入 agent 安装脚本,点击回车,即可在所有客户机上全部安装 - 安装 v1 的 agent 前,需要先卸载 v0 版本的 agent
1 | cd /opt/nezha/agent && ./nezha-agent service uninstall |
#cloudflare #github #面板 #docker
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果



