跳转至

grafana

构建版本

v6.7.4

构建环境

龙芯server系统,具体环境如下:

[loongson@bogon grafana]# cat /etc/os-release 
NAME="Loongnix-Server Linux"
VERSION="8"
ID="loongnix-server"
ID_LIKE="rhel fedora centos"
VERSION_ID="8"
PLATFORM_ID="platform:lns8"
PRETTY_NAME="Loongnix-Server Linux 8"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:loongnix-server:loongnix-server:8"
HOME_URL="http://www.loongnix.cn/"
BUG_REPORT_URL="http://bugs.loongnix.cn/"
CENTOS_MANTISBT_PROJECT="Loongnix-server-8"
CENTOS_MANTISBT_PROJECT_VERSION="8"
[loongson@bogon grafana]# uname -a
Linux bogon 4.19.190-6.5.lns8.loongarch64 #1 SMP Thu Sep 8 16:01:34 CST 2022 loongarch64 loongarch64 loongarch64 GNU/Linux

源码适配

与架构无关,该版本只需要将vendor目录下sys项目替换为支持LoongArch64的版本即可

安装构建依赖

wget http://ftp.loongnix.cn/nodejs/LoongArch/dist/v12.19.1/node-v12.19.1-linux-loong64.tar.gz(需要node>=12 && <13的版本:)
export PATH=/pagure/zhaixiaojuan/cloud-github/ceph-project/node-v12.19.1-linux-loong64/bin:$PATH
yum install -y python2 python3 phantomjs
在~/.bashrc中加入以下内容(因为在grafana项目中使用的二进制名称是python)
alias python3='/usr/bin/python3'
alias python=python3
source ~/.bashrc

构建步骤

(1)构建前端

npm install -g yarn
yarn install --pure-lockfile   
npx browserslist@latest --update-db    //更新browserslist,否则会因为版本较低而报错   
npm run watch    //等同于yarn start命令

//这里需要重新打开一个terminal, 因为上面的watch会启动一个监视进程
npm run build    //这一步对机器的性能要求较高,普通的PC在运行时可能会卡死,最好使用服务器
注意: 在运行npm run watch或者yarn start命令后,会在本地启动一个监视进程,会监控当前项目文件,只要任何文件发生变化,便会重新进行构建

(2)构建后端

go run build.go build 
构建完成后会在bin/linux-loong64目录下生成相应的二进制:
[loongson@bogon linux-loong64]$ ls
grafana-cli  grafana-cli.md5  grafana-server  grafana-server.md5

(3)构建deb和rpm包

go run build.go package-only
构建完成后会在dist目录下生成相应的tar包,deb包和rpm包:
[loongson@bogon dist]$ ls
grafana-6.7.4-1679366822.linux-loong64.tar.gz  grafana_6.7.4-1679366822_loong64.deb  grafana-6.7.4-1679366822.loong64.rpm

备注

在构建前端时需要注意,不能使用ssh远程登录机器构建,必须在本机上构建,因为在构建时会用到phantomjs这个二进制,该二进制在使用时,远程ssh无法返回图形结果从而导致报错