以下红字部分都是我在安装过程中遇的问题及解决方法, 加粗的都是重点
准备工作确认:
系统:Windows 10 x64
软件准备:
GO 版本:尽量使用跟官网一样的版本,如何确认呢? 笔者是通过Github的更新记录进行确认版本的,这点其实挺重要的,如果用高版本或者新版本,不能确保是否出现莫名其妙的坑,而且可能是大坑,https://github.com/grafana/grafana/releases, 笔者看到最新build的版本是1.12.10,于是选择了该版本,具体的大家可以根据这个做选择。
注意:我是通过 go.mod 文件来判断的当前 grafana用的是哪个版本的go,
我安装 grafana 的时候 go.mod 文件用的是 1.12 而我本地的 go 版本号是 1.13 结果执行以下命令的时候
go run build.go setup
go run build.go build
会报以下错误,百度都搜不到,
到后来实在没办法了.把go的版本降底到 1.12 ,结果编译的时候就通过了
Git,这个应该没有太高的要求,只是从github中Clone 源码,笔者的版本是Git-2.23.0-64-bit.exe
NodeJs,可以选择使用最新的稳定版本,Grafana的编译说明有此说明For this you need nodejs (v.6+)
Nod-gyp,Grafana提及的前端编译工具
TDD-GCC,也是使用Grafana提及的Gcc工具
软件安装
1)go1.12.10.windows-amd64.msi 安装完后,添加环境变量($GOPATH)及其Path添加GO的bin路径
确定Go的是否正常运行
2)NodeJS 和Git 默认安装即可(安装路径自己喜欢),同样确保环境变量(Path)中添加相关的Bin路径。
3)其他软件在下面出现的坑中述说。
获取源码
进入$GoPATH(G:\01-monitor\04-grafana\code\go)后运行:
#go get github.com/grafana/grafana
上面的命令从Github中获取最新的源码,天朝的网络....所以笔者选择直接从github中下载当前稳定的版本V6.4.3,解压后放入$GoPATH
这里我是直打开 vpn 来下载的
目录,最终的目录是G:\01-monitor\04-grafana\code\go\src\github.com\grafana\grafana(粗体为$GOPATH目录)
编译源码
后端编译
进入Grafana的根目录 ($GOPATH\src\github.com\grafana\grafana): 编译时如果报这个错误,就是 go 版本号与 go.mod 里的版本号不符所导致的
#go run build.go setup
这里有两个地方需要注意
1)找不到pkg
需要确认src的源码是否是 $GOPATH\src\github.com\grafana\grafana
2)go-sqlite3编译或者获取失败
原因是go-sqlite3需要GCC进行编译,因此笔者继续安装TDM-GCC,可以用其他GCC编译软件,为了少踩坑,笔者建议选择跟网络一致的GCC软件,安装正常安装即可,这里不详细叙说,需要注意的是,如果你电脑安装了多个gcc编译软件,你需要确认正常运行的默 认Gcc是否是你所需要的(把你所需要的在Path环境变量中放在前面)
这里有个小插曲,我装 GCC 的时候,一直都装不上,不知道为何,结果我突发其想是不是被墙了,开了VPN 之后,下载飞快,哈哈哈,我的 gcc 装的是 x86_64-6.2.0-posix-seh-rt_v5-rev1 安装工具下载地址 下载页面 具体安装教程
确认GCC的版本:
续运行
go run build.go setup
看到上面的画面,恭喜可以拖走了,继续下面的命令
#go run build.go build
编译成功之后会在当前的目录下 $GOPATH\src\github.com\grafana\grafana 会生成 bin 文件夹,下面有 window_amd64 文件夹,下面有以下几个文件
就此,Grafana的后端编译完成, 下面进行前端的编译
前端编译
1)安装node-gyp 前端编译工具
windows 需要管理员运行cmd或powershell,然后运行下面的命令,检查 npm dependencies
# npm --add-python-to-path='true' --debug install --global windows-build-tools
此过程或安装python2.7 和windows build tools, 笔者机上一起顺利
2)正式开始编译
#npm install -g yarn
#yarn install --pure-lockfile
这里有几个坑需要填平才能继续
坑1
运行 set-ExecutionPolicy RemoteSigned
坑2
#yarn config set ignore-engines true //继续运行 #yarn install --pure-lockfile,
经过长时间的等待(如果能vpn,尽量vpn)
上面出现的错误,笔者也没明白,但是目前 没有影响笔者的后面插件源码修改之路
#yarn start
出现上面,恭喜你,成功了
修改grafana/conf/defaults.ini
http_port = 3000
运行(大家看看生成的bin和grafana的根目录的层次关系,就明白笔者的运行为啥那么多层了,grafana默认使用当前目录的/conf/default.ini)
注意:这里官网是不建议直接修改 defaults.ini 来进行配置的, 官方文档
Windows下可以直接拷贝 sample.ini 文件一份然后重命名为 custom.init 然后再在里面配置相关的配置信息
Mac or Linux 下则考的是 default.ini 文件一份然后重命名为 custom.init 然后再在里面配置相关的配置信息
另外 3000端口在 windows 下是没有权限的,最好改成 8080
浏览器中打开 http://localhost:3000 默认账户密码 admin/admin
然后进入到 $GOPATH\ 根目录执行
grafana-server.exe
以下是我自加内容:
会发现怎么都运行不起,起出我是直接点击 运行,然后 控制台一闪而过就退出了,肯定是哪里不对劲,从网上一搜索,说还是从控制台里运行这个程序,果然,报了这个错误
Grafana-server Init Failed: Could not find config defaults, make sure homepath command line parameter is set or working directory is homepath
这是运行的时候没有指定 homepath 啊.然后就去查官方文档,也没找出个一二三来,只有这样一段话... 地址
然后我去查找以前 Mac 上面的安装 笔记, 初次运行的时候需要这样执行命令
//注:启动源码编译之后必须要指定homepath
./bin/grafana-service —homepath=‘grafana地址' //如: .\grafana-server.exe -homepath "D:\project\warlock-1.4.4-new\src\github.com\grafana\grafana"
然后就一切顺利了....万事大吉啦
打开 localhost:8080 显示登录页面
感谢博主「mjesse88」原文链接:https://blog.csdn.net/mjesse88/article/details/102853515