从官方文档中可知,system settings are defined in grafana.ini or custom.ini (or overridden in ENV variables). To change these you currently need to restart grafana。
grafana的配置文件其实由挺多的,但是官网上也是给出来了,使用docker exec -it 容器名 bash进入容器中
/etc/grafana/grafana.ini、/usr/share/grafana/conf/defaults.ini,还有就是通过环境变量进行修改。
我的版本是6.3.5,首先普通方式启动容器
docker run -itd -p 3000:3000 --name grafana grafana/grafana
1.etc/grafana/grafana.ini文件
使用docker cp grafana:/etc/grafana/grafana.ini 宿主机目录;;;;为什么要复制出来呢,因为官网的grafana镜像里面的插件少的可怜,vim都没有,大家可以选择安装vim,我由于只能进入到普通用户,sudo命令也没有,所以就复制了
然后在宿主机上使用vim编辑,修改auth_anonymous节点下的enable = true;然后保存就可以了
重新运行容器:
docker run -itd -p 3000:3000 --name grafana -v /root/grafana/:/etc/grafana/ grafana/grafana
通过浏览器去访问grafana网址,发现还是需要用户名密码(这种方法网上有人成功过,但是我失败了)
2./usr/share/grafana/conf/defaults.ini
同样是复制到宿主机中,修改也是一样的。
docker run -itd --name grafana -p 3000:3000 -v /root/hw/grafana/:/usr/share/grafana/conf/ grafana/grafana
通过浏览器访问,发现可以成功匿名登陆
3. 环境变量(最方便)
docker run -itd --name grafana -p 3000:3000 -e "GF_AUTH_PROXY_ENABLED=true" -e "GF_AUTH_ANONYMOUS_ENABLED=true" -e "GF_SECURITY_ALLOW_EMBEDDING=true" grafana/grafana
这里解释一下:GF_SECURITY_ALLOW_EMBEDDING:用于网页嵌套的,如果需要在iframe,frame嵌套grafana,那么把这个变量设置为true;