解析域名
准备两个域名并在Cloudflare解析域名到服务器IP:
- 域名1:开启CDN,用于访问前端页面,如:“https://cdn.example.com”
- 域名2:不开启CDN,用于Agent访问后端API,如:“https://api.example.com”
获取Github的Client ID和Client Secret
- 登录Github,点击右上角头像,选择Settings, 点击Developer settings,点击New OAuth App
- 填写注册信息:
- Application name - 随意填写,如:“nezha-monitoring”
- Homepage URL - 填写面板的访问域名,如:“https://cdn.example.com”
- Authorization callback URL - 填写回调地址,如:“https://cdn.example.com/oauth2/callback"
- 点击Register application
- 保存页面中的 Client ID,然后点击 “Generate a new client secret“,创建一个新的 Client Secret,新建的密钥仅会显示一次,请妥善保存
在服务器中安装 Dashboard
-
在面板服务器中,运行安装脚本:
curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh
-
等待Docker安装完毕后,分别输入以下值:
- OAuth提供商:Github
- Client ID - 之前保存的 Client ID
- Client Secret - 之前保存的密钥
- 用户名 - OAuth 提供商中的用户名
- 站点标题 - 自定义站点标题
- 访问端口 - 公开访问端口,可自定义,默认 8008
- Agent的通信端口 - Agent与Dashboard的通信端口,默认 5555
-
输入完成后,等待拉取镜像。
-
将来如果需要再次运行脚本,可以运行:
./nezha.sh
开启反向代理和SSL
通过宝塔界面分别对两个域名配置反向代理和SSL,配置完成后,访问面板域名,即可看到面板。
配置未接入CDN的域名
- 后台管理 - 设置 - 未接入CDN的面板服务器域名/IP:输入未接入CDN的域名,如:“https://api.example.com”
安装Agent
- 首先在管理面板中添加一台服务器
- 点击新添加的服务器旁,绿色的 Linux 图标按钮,复制一键安装命令
- 在被控端服务器中运行复制的一键安装命令,等待安装完成后返回到 Dashboard 主页查看服务器是否上线