thum.png

面板端(服务端)

此部分部署在Serv00中,操作系统为freebsd

Serv00的Web面板中添加域名,映射端口

新建两个端口

1158:作为web面板端口
1159:作为grpc端口用于与被管理的服务器中agent通讯端口

新建2个website

nezha.milaone.app
agent.milaone.app
Website type选择代理,
分别指向localhost的1158端口和1159端口
nezha.milaone.app作为面板的https访问地址
agent.milaone.app作为跟被管理服务器通信使用
然后把这两个个域名的A记录指向serv00的ip,
切记agent.milaone.app切记!
不要开启cdn,不要开启cdn,不要开启cdn

github中申请OAuth2

然后Register application按钮,返回应用的相关信息。

记录下获得的id和secret,待会配置文件要用

SSH终端中下载服务器端的二进制文件dashboard

我将建立一个~/nezhacmd目录,作为面板的程序目录。


#建立一个面板程序目录
mkdir ~/nezhacmd
cd ~/nezhacmd

#下载freebsd编译好的二进制文件最新版,并赋给运行权限
API_URL="https://api.github.com/repos/wansyu/nezha-freebsd/releases"
RELEASE_DATA=$(curl -s $API_URL | jq -r '.[0]')
echo "$RELEASE_DATA"
DOWNLOAD_URL=$(echo "$RELEASE_DATA" | jq -r ".assets[] | select(.name == \"dashboard\") | .browser_download_url")
if [ -z "$DOWNLOAD_URL" ]; then
  echo "No asset named 'dashboard' found"
else
  curl -L $DOWNLOAD_URL -o dashboard
fi
chmod +x dashboard

如果上面代码运行出错
请到https://github.com/wansyu/nezha-freebsd/releases获取最新版二进制文件地址
使用命令
curl -L 文件地址 -o dashboard
进行下载最新版到~/nezhacmd目录中
然后
chmod +x dashboard

准备运行面板所需的文件

克隆nezha仓库,到~/nezha
拷贝~/nezha/resource到~/nezhacmd #resource中包含了面板中的主题等资源
拷贝~/nezha/script/config.yaml配置文件到~/nezhacmd/data/config.yaml
下面是代码


#克隆哪吒面板项目目录
git clone https://github.com/naiba/nezha.git ~/nezha
cp -r ~/nezha/resource ~/nezhacmd

#拷贝配置文件
mkdir ~/nezhacmd/data
cp ~/nezha/script/config.yaml ~/nezhacmd/data/config.yaml

#删除克隆目录(这个目录没用)
rm -rf ~/nezha

编辑配置文件 nano ~/nezhacmd/data/config.yaml


debug: false
httpport: 80
language: zh-CN  #需要修改为zh-CN
grpcport: 1159 #需要修改为1159
oauth2:
  type: "github" #Oauth2 登录接入类型,github/gitlab/jihulab/gitee/gitea
  admin: "milaone" #管理员列表,填写自己github的用户名                                                                             clientid: "nz_github_oauth_client_id" #填写前面github OAuth中申请的id
clientsecret: "nz_github_oauth_client_secret"#填写前面github中申请的secret
  endpoint: "" # 如gitea自建需要设置
site:
  brand: "nz_site_title"
  cookiename: "nezha-dashboard" #浏览器 Cookie 字段名,可不改
  theme: "default"
ddns:
  enable: false
  provider: "webhook" # 如需使用多配置功能,请把此项留空
  accessid: ""
  accesssecret: ""
  webhookmethod: ""
  webhookurl: ""
  webhookrequestbody: ""
  webhookheaders: ""
  maxretries: 3
  profiles:
    example:
      provider: ""
      accessid: ""
      accesssecret: ""
      webhookmethod: ""
      webhookurl: ""
      webhookrequestbody: ""
      webhookheaders: ""

编辑好配置文件后,pm2 start /home/milaone/nezha/dashboard


pm2 start /home/milaone/nezha/dashboard
pm2 save

服务器启动后,访问面板,然后登录,进入到后台管理中,设置
找到“未接入CDN的面板服务器域名/IP”选项
填入用于连接agent的域名,该域名一定不要启用cdn*说3遍

截止到现在面板的部署部分已经完成,现在已经可以使用https://live.milaone.app访问面板了。


Agent端(被管理的服务器-客户端)

此部分部署在被管理服务器中,操作系统兼容windows|Linux|Macos|群晖DSM|OpenWrt|

Agent部分我介绍两种方法

1.直接在面板的服务器管理页面中添加一个服务器,复制一键安装脚本进行安装,此方法适和多数场景,但是,但是,但是,他会在系统中以服务的方式进行运行,对于有洁癖的朋友,不喜欢第三方程序介入系统太深的朋友,可以参考第二种方法。

2024-08-08T04:07:20.png

2.可以直接再作者官方下载二进制文件下载后。一行命令连接服务器面板


./agent -s nezha.milaone.app:1159 -p D53b3tmjhuYezNC8jP -d 

随时启动随时停止,关键是可以随时删除,感觉可控可靠比较放心的方式

https://github.com/nezhahq/agent/releases
到Agent的二进制文件发布页面选择自己对应的操作系统复制下载连接
进入到被管理服务器中

mkdir ~/nezha-agent
cd ~/nezha-agent
curl -L https://github.com/nezhahq/agent/releases/download/v0.18.13/nezha-agent_linux_amd64.zip -o agent.zip
unzip -j agent.zip

遗憾

发表评论