docker - custom.ini 被 Grafana docker 镜像忽略

标签 docker docker-compose grafana

我对 grafana docker 镜像有一个奇怪的问题:它完全忽略了我的 custom.ini 文件。

目标是将 app_mode 设置为没有环境变量的开发(否则可以在 docker-compose 中使用 GF_DEFAULT_APP_MODE: development)。

这是我的 docker-compose 有趣的部分:

  grafana:
image: grafana/grafana:6.2.2
ports:
  - "3000:3000"
user: ${ID}
volumes:
  - "$PWD/data:/var/lib/grafana"
  - "$PWD/custom.ini:/etc/grafana/custom.ini"
  - "$PWD/custom.ini:/usr/share/grafana/conf/custom.ini"
  - "$PWD/custom.ini:/usr/share/grafana/conf/sample.ini"

如您所见,我尝试了很多位置(以防万一)。

我使用以下命令部署堆栈:ID=$(id -u) docker-compose up -d
除了配置问题,Grafana 工作得很好。
我可以在容器中正确看到我的挂载,并且 custom.ini 文件格式正确(我没有忘记删除注释符号 ; )

以下是日志(我们看不到有关 custom.ini 或 sample.ini 的提及):
Attaching to dev_grafana_1
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Starting Grafana" logger=server version=6.2.2 commit=07540df branch=HEAD compiled=2019-06-05T13:04:21+0000
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Config loaded from" logger=settings file=/usr/share/grafana/conf/defaults.ini
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Config loaded from" logger=settings file=/etc/grafana/grafana.ini
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Config overridden from command line" logger=settings arg="default.paths.data=/var/lib/grafana"
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Config overridden from command line" logger=settings arg="default.paths.logs=/var/log/grafana"
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Config overridden from command line" logger=settings arg="default.paths.plugins=/var/lib/grafana/plugins"
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Config overridden from command line" logger=settings arg="default.paths.provisioning=/etc/grafana/provisioning"
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Config overridden from command line" logger=settings arg="default.log.mode=console"
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Config overridden from Environment variable" logger=settings var="GF_PATHS_DATA=/var/lib/grafana"
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Config overridden from Environment variable" logger=settings var="GF_PATHS_LOGS=/var/log/grafana"
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Config overridden from Environment variable" logger=settings var="GF_PATHS_PLUGINS=/var/lib/grafana/plugins"
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Config overridden from Environment variable" logger=settings var="GF_PATHS_PROVISIONING=/etc/grafana/provisioning"
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Path Home" logger=settings path=/usr/share/grafana
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Path Data" logger=settings path=/var/lib/grafana
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Path Logs" logger=settings path=/var/log/grafana
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Path Plugins" logger=settings path=/var/lib/grafana/plugins
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="Path Provisioning" logger=settings path=/etc/grafana/provisioning
grafana_1          | t=2019-06-11T14:20:44+0000 lvl=info msg="App mode production" logger=settings

我使用图像 grafana/grafana:6.2.2

谢谢你的帮助 !

注意:我还尝试了很多时间来重新启动甚至重新创建我的容器。

最佳答案

我刚刚在我的 Grafana 容器上修复了这个问题,所以也许这对你有帮助。我试图设置的只是 SMTP 配置。我在 Windows 上运行 Docker,因此您当然需要根据需要更改脚本。我也在容器外重定向数据,以便包含配置。

docker run -d -p 3000:3000 --name=grafana `
-v C:/DockerData/Grafana:/var/lib/grafana `
-v C:/DockerData/Grafana/custom.ini:/etc/grafana/grafana.ini `
grafana/grafana

我从 powershell 启动,所以这就是为什么 ` 用于继续下一行。此外,它不喜欢本地文件也被称为 grafana.ini。它只是不会从那个开始。因此,您会看到本地文件是 custom.ini,但我覆盖了 grafana.ini 文件。我希望这有帮助。

关于docker - custom.ini 被 Grafana docker 镜像忽略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56546218/

相关文章:

google-app-engine - docker -v 和符号链接(symbolic link)

mysql - 我无法使用DataGrip数据库客户端从本地主机连接到Docker中的mysql

Docker挂载顺序乱序,不让我挂载我的目录

kubernetes - 在Kubernetes上使用Prometheus监视Spring Boot Apps,而不设置端点

python - Docker 镜像默认为 python 3.6,即使我安装了 python 3.7

.net - 无法访问我的 .NET 容器

docker - 如何使用 Terraform 部署我的 docker-compose 项目?

docker - 同时查看所有 docker 容器的日志

grafana - 如何使用 Loki 配置记录和警报规则

grafana - 无法在本地系统上运行 Grafana 服务器