之前写了《serv00 和 ct8 主机一键安装哪吒探针 V1 版本》的教程,再发一贴分享下这个一键安装的探针dashboard面板是如何构建出来的。
由于哪吒探针官方没有提供哪吒面板FreeBSD版本,所以要想在serv00/ct8这种FreeBSD
操作系统上安装得自己去构建。之前最初的几个版本(也是哪吒探针V0版本期间),是在安装期间直接拉取官方源代码构建出来的:也就在serv00/ct8机器安装探针面板时,会先用命令 go build -ldflags="-s -w --extldflags '-static -fpic' -X github.com/naiba/nezha/service/singleton.Version=${version_num}"
构建得到安装包然后再安装。
这样带来的问题就是每次安装或者升级dashboard面板时都会消耗较长时间,于是后面做了优化:解耦出 https://github.com/vfhky/nezha-build 这个项目专门用来构建生成FreeBSD
版本的探针面板安装包,然后在一键安装项目中直接下载这个安装包即可。
nezha-build
之前尝试在github workflow中使用goreleaser/goreleaser-action来交叉构建FreeBSD安装包,但是因为头文件的问题一直失败,后面改用vmactions/freebsd-vm虚拟机的构建成功了,感兴趣的也可以点这里围观这个折腾过程。
目前nezha-build
定时每天8点、16点、24点拉取官方最新代码进行构建,以便serv00和ct8主机一键安装哪吒探针工程能下载和安装到最新的探针面板。当然,如果有其它项目也需要的话,也可以直接去github下载FreeBSD各个版本的安装包。
源码就不贴啦,直接上github查看即可!