CentOS 7 下源码编译grafana并打包
所有操作都在管理员权限下执行
#su //后输入密码
1.node安装
新建存储下载文件的目录,我存储在 usr/download中:
#cd /usr
#mkdir download
获取node压缩包: (需要版本>=12<13) 可到淘宝镜像中选版本
#wget https://npm.taobao.org/mirrors/node/v12.4.0/node-v12.4.0-linux-x64.tar.gz
解压文件
#tar vxzf node-v12.4.0-linux-x64.tar.gz
将解压后文件目录指向全局链接 (可到/usr/local/bin中查看 bin 与 npm 是否存在且指向原解压后的文件)
#ln -s /usr/download/node-v12.4.0-linux-x64/bin/ /usr/local/bin/
#ln -s /usr/download/node-v12.4.0-linux-x64/bin/npm /usr/local/bin/
配置环境变量
#vim /etc/profile //进入后 i 编辑 :wq 保存退出 需要管理员权限su
//在最后添加
export PATH=/usr/download/node-v12.4.0-linux-x64/bin/:$PATH
//使配置生效
#source /etc/profile
#node -v
查看版本
2.git安装
CentOS应该自带有yum,否则首先安装yum
#yum -y install git
3.golang安装
获取压缩包 (在我创建的usr/download中)
#wget https://studygolang.com/dl/golang/go1.13.3.linux-amd64.tar.gz
解压
#tar -xf go1.13.3.linux-amd64.tar.gz
到 /home
中新建 go 的安装文件目录
#mkdir -p /home/goProject
配置环境变量
#vim /etc/profile
//粘贴到最后
export GOROOT=/usr/download/go //go解压后的文件目录
export GOPATH=/home/guanghuiying/goProject //新建的go安装目录
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOROOT/bin
export PATH=$PATH:$GOPATH/bin
//使配置生效
#source /etc/profile
查看版本
#go version
4.grafana源码下载
首先需要cd到GOPATH中
#cd /home/goProject
使用git下载源码 (go get github.com/grafana/grafana获取不了)
#git clone https://github.com/grafana/grafana
下载后可到 /home/goProject/src 中查看
之后使配置生效
#source /etc/profile
5.源码前后端编译
//前后台编译都需要在这个目录下
#cd /home/goProject/src/github.com/grafana/grafana
首先,编译后端
#go run build.go setup
#go run build.go build
有可能会弹出缺少gcc插件,如果缺少请安装
#yum install gcc gcc-c++
编译后,将 /bin 中 /linux-amd64 目录里的文件移动到 /bin
#mv
运行后台
#./bin/server-grafana
然后,编译前端
下载yarn
#npm install -g yarn
yarn 下载包
#yarn install --pure-lockfile
如果下载失败:
1.没有安装bzip2,导致部分文件无法解压
#yum install bzip2
2.phantomjs需要国内镜像下载
#PHANTOMJS_CDNURL=http://npm.taobao.org/mirrors/phantomjs yarn install
3.node-sass需要国内镜像下载
#yarn config set sass-binary-site http://npm.taobao.org/mirrors/node-sass
4.代理出现问题??
#npm config rm proxy
#npm config rm https-proxy
启动前台 (对系统的内存有要求,之前2G一直不行,设置为4G)
#yarn start
之后便可进入localhost:3000
6.打包为deb、rpm
需要安装fpm
#yum -y install ruby rubygems ruby-devel
#gem sources -a http://gems.ruby-china.com/ //原 http://ruby.taobao.org/ 已停止维护
#gem sources --remove http://rubygems.org/
#gem install fpm
之后
#go run build.go build package
完成后,在dist文件下,有你打包后的可执行文件(deb、rpm、tar.gz)