使用1panel部署哪吒监控v1
前言
哪吒监控(Nezha Monitoring)是一款开源的、轻量级的服务器监控工具,支持多种指标监控、状态通知等功能。本文部署哪吒监控将使用1panel面板+Openresty+Docker的方式进行部署。
准备工作
- 已安装1panel面板的服务器(本文以Debian环境为例)
- 一个域名(用于访问哪吒监控面板)
- 确保服务器已开放相应端口
域名解析与Cloudflare设置
在开始部署哪吒监控之前,我们需要先设置域名解析和CDN服务。本文以域名托管在Cloudflare(小黄云)上为例:
域名解析
- 登录你的Cloudflare账户
- 选择你的域名(以
xyuns.cc
为例) - 进入DNS > 记录页面
- 点击添加记录,添加一条A记录:
- 类型:
A
- 名称:
tzdata
(或其他你希望的子域名前缀) - IPv4地址:你服务器的IP地址
- 代理状态:确保云图标为橙色(即代理状态为“已代理”)
- TTL:自动
- 类型:
最终得到的域名将是tzdata.xyuns.cc
配置Cloudflare必要功能
- 登录你的Cloudflare账户
- 选择域名
xyuns.cc
- 进入「域名设置」->网络
- 确保以下设置已启用:
- 开启WebSockets
- 开启gRPC
- SSL/TLS模式选择「完全(严格)」
这些设置对于哪吒监控的WebSocket和gRPC通信是必不可少的,可以确保监控数据的正常传输和实时刷新。
服务器安装Dashboard
1. 准备环境(Debian系统)
在Debian系统下,我们首先需要安装必要的环境:
安装Openresty
在1panel中安装Openresty非常简单,只需要几个点击即可完成:
- 登录1panel控制面板
- 点击左侧菜单栏的应用商店
- 在搜索框中输入”Openresty”
- 找到Openresty应用,点击安装
- 按照提示设置参数并完成安装
安装完成后,Openresty将自动启动并运行
安装UFW防火墙
1 | sudo apt install -y ufw |
注意:请确保将1panel的管理端口添加到防火墙例外规则中,否则启用防火墙后将无法访问1panel控制面板。端口号请根据你实际的安装情况进行修改。
2. 安装Dashboard
在服务器中,运行以下安装脚本:
1 | # 国外版本 |
如果你的服务器位于中国大陆,可以使用镜像:
1 | # 国内版本 |
3. 配置Dashboard
以Docker安装为例:
安装过程中按提示输入以下信息:
- 站点标题:输入你想要的站点名称
- 暴露端口:直接默认8008即可
- nezha-agent连接地址:替换为自己的域名,例如
tzdata.xyuns.cc:443
- 是否希望通过TLS连接Agent?:输入
y
并回车继续 - 选择后台语言:选择中文简体
4. 设置反向代理
安装完成后,我们需要配置反向代理来使用域名访问哪吒监控面板。在1panel中操作如下:
- 在1panel控制面板中点击网站->创建->反向代理
- 输入主域名(如
tzdata.xyuns.cc
) - 输入代理地址为
127.0.0.1:8008
- 点击确认创建
- 点击刚添加的域名所在的网站配置
开启HTTPS并配置证书
点击网站配置文件
在最下面添加以下配置:
1 | upstream dashboard { |
- 点击保存并重载
5. 优化反向代理配置
为了哪吒监控能够正常工作,我们需要进一步优化反向代理配置:
进入网站目录
编辑以下配置文件:
1
/opt/1panel/apps/openresty/openresty/www/sites/你输入的主域名/proxy/root.conf
将配置文件内容替换为以下内容:
1 | location ^~ / { |
- 保存并重载
6. 编辑哪吒监控容器配置
完成反向代理配置后,还需要编辑哪吒监控的容器配置:
- 在1panel面板中进入容器页面
- 找到
nezha-dashboard
容器 - 点击更多->编辑
- 对容器进行以下修改:
- 端口:将服务器下的8008改为
127.0.0.1:8008
- 网络:选择
1panel-network
- IPv4 地址:根据实际网段进行修改(可在容器->网络中查看对应网段)
- 端口:将服务器下的8008改为
- 点击确认
- 点击重构镜像并部署
完成以上所有配置后,访问你设置的域名,即可进入哪吒监控面板。
多这个步骤是因为Linux 防火墙 ufw 无法禁用 Docker 端口映射,设置完后8008端口就无法访问了,提高安全性。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 昕云!