怎么启动服务?
brew update这个是检测当前brew 的版本,防止拉去版本不一致,brew 这边不做解释(需要设置清华镜像),自行下载。brew install grafana这个是在本地安装了grafana打包好的源码包。- 启动服务
brew services start grafana关闭服务brew services stop grafana。其实这个时候就正常使用,
其实这边过程使用很简单,下面是如何自己
如何本地代理代码
- 需要准备环境,需要
go,node,我这边使用的是最新的 goversion go1.23.4 darwin/amd64,,node20.16.0, - 在控制台输入
go env会出现以下数据
GO111MODULE=''
GOARCH='amd64'
GOBIN=''
GOCACHE='/Users/xxx/Library/Caches/go-build'
GOENV='/Users/xxx/Library/Application Support/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='darwin'
GOINSECURE=''
GOMODCACHE='/Users/xxx/Desktop/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='darwin'
GOPATH='/Users/xxx/Desktop/go'
GOPRIVATE=''
GOPROXY='https://goproxy.cn'
GOROOT='/usr/local/Cellar/go/1.23.4/libexec'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='local'
GOTOOLDIR='/usr/local/Cellar/go/1.23.4/libexec/pkg/tool/darwin_amd64'
GOVCS=''
GOVERSION='go1.23.4'
GODEBUG=''
GOTELEMETRY='local'
GOTELEMETRYDIR='/Users/xxx/Library/Application Support/go/telemetry'
GCCGO='gccgo'
GOAMD64='v1'
AR='ar'
CC='cc'
CXX='c++'
CGO_ENABLED='1'
GOMOD='/Users/xxx/Desktop/go/github.com/grafana-11.4.0/go.mod'
GOWORK='/Users/xxx/Desktop/go/github.com/grafana-11.4.0/go.work'
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -ffile-prefix-map=/var/folders/5h/44cc_gw93c93m5x75y48z9zm0000gn/T/go-build2202053662=/tmp/go-build -gno-record-gcc-switches -fno-common'
其中我们需要设置的是GOPATH,GOPROXY,这边通过命令vim ~/.zshrc 打开mac 环境配置
export GOPATH=/Users/xxxx/Desktop/go
export GOPROXY=https://goproxy.cn
设置完成之后执行source ~/.zshrc 生效,这个时候go语言的环境准备好了
然后我们拉取grafana仓库代码地址这个地方需要注意了,需要之前执行brew install grafana 拉去本地版本,如果版本不一致,是打开不了代码的,执行brew list grafana 可以查看到版本,那这个时候选择对应的git分支版本下载就可以了
启动本地二次开发代码
- 刚刚代码已经下载,现在本地执行
yarn install, yarn start这边其实是把当前的代码压缩给go语言去渲染,这个时候我们执行make run这个命令可以检测代码变化,不过需要刷新页面。
修改成功,
其实以上这一步* brew install grafana 这个是在本地安装了grafana打包好的源码包。 在二开的话,应该是不需要的,因为当前git里面有,以上就是前端的分享,后端go语言的不太懂了...