1.简介
一键安装
支持一键脚本安装面板和监控服务,轻松使用;Linux、windows、MacOS、OpenWRT等主流系统均受支持
实时监控
支持同时监控多个服务器的系统状态,支持监控网页、端口、SSL证书状态;支持故障、流量等状态报警,支持多种通知方式(Telegram、邮件、微信等)
轻松运维
支持WebSSH,支持流量循环监控,支持设置定时任务、服务器批量执行任务
2.准备工作
搭建一个哪吒监控,你需要:
- 一台可以连接公网的 VPS,防火墙和安全策略需要放行 8008 和 5555 端口,否则会无法访问和无法接收数据。单核 512MB 内存的服务器配置就足以满足大多数使用场景
- 一个已经设置好 A 记录,指向 Dashboard 服务器 ip 的域名
TIP
如果你想使用 CDN,请准备两个域名,一个配置好 CDN 用作公开访问,CDN 需要支持WebSocket 协议;另一个域名不要使用 CDN,用作 Agent 端与 Dashboard 的通信
本文档分别以 “CDN.example.com” 和 “data.example.com” 两个域名来演示
- 一个 Github 账号(或:Gitlab、Jihulab、Gitee)
TIP
本文档将以宝塔面板反代面板的过程作为范例,随着未来版本的变化,部分功能的入口可能会发生改变,本文档仅供参考
WARNING
本项目并不依赖宝塔,你可以选择使用你喜欢的任何服务器面板,如果你能力足够,可以手动安装 NginX 或 Caddy 来配置 SSL 和反代。
如果你认为没有必要使用 80、443 端口来访问 Dashboard,你甚至不需要安装 NginX 就可以直接使用安装脚本。
3.获取 Github/Jihulab 的 Client ID 和密钥
哪吒监控接入 Github、Gitlab、Jihulab、Gitee 作为后台管理员账号
- 首先我们需要新建一个验证应用,以 Github 为例,登录 Github 后,打开 https://github.com/settings/developers ,依次选择“OAuth Apps” – “New OAuth App”
Application name
– 随意填写Homepage URL
– 填写面板的访问域名,如:”http://cdn.example.com“Authorization callback URL
– 填写回调地址,如:”http://cdn.example.com/oauth2/callback“ - 点击 “Register application”
- 保存页面中的 Client ID,然后点击 “Generate a new client secret“,创建一个新的 Client Secret,新建的密钥仅会显示一次,请妥善保存
- JihuLab 的应用创建入口为:https://jihulab.com/-/profile/applications
Redirect URL
中应填入回调地址- 在下方
范围
中勾选read_user
和read_api
- 创建完成后,保存好应用程序 ID 和密码
4.在服务器中安装 Dashboard
在面板服务器中,运行安装脚本:
curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh
如果你的面板服务器位于中国大陆,可以使用镜像:
curl -L https://jihulab.com/nezha/dashboard/-/raw/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo CN=true ./nezha.sh
等待docker安装完毕后,分别输入以下值:
OAuth提供商
– Github,Gitlab,Jihulab,Gitee 中选择一个Client ID
– 之前保存的 Client IDClient Secret
– 之前保存的密钥用户名
– OAuth 提供商中的用户名站点标题
– 自定义站点标题访问端口
– 公开访问端口,可自定义,默认 8008Agent的通信端口
– Agent与Dashboard的通信端口,默认 5555
输入完成后,等待拉取镜像
安装结束后,如果一切正常,此时你可以访问域名+端口号,如 “http://cdn.example.com:8008” 来查看面板
将来如果需要再次运行脚本,可以运行:
./nezha.sh
来打开管理脚本
5.配置反向代理
- 在宝塔面板中新建一个站点,域名填写公开访问域名,如 “http://cdn.example.com“ ,然后点击“设置”进入站点设置选项,选择“反向代理” – “新建反向代理”
- 自定义一个代理名称,在下方“目标 URL”中填入
http://127.0.0.1
然后点击“保存” - 打开刚刚新建的反向代理右边的“配置文件”,将配置文件替换为以下内容:
#PROXY-START/
location / {
proxy_pass http://127.0.0.1:8008;
proxy_set_header Host $http_host;
proxy_set_header Upgrade $http_upgrade;
}
location ~ ^/(ws|terminal/.+)$ {
proxy_pass http://127.0.0.1:8008;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $http_host;
}
#PROXY-END/
- 点击“保存”
现在,你应该可以直接使用域名,如:“http://cdn.example.com“ 来访问面板了