如何使用自定义ini文件的Grafana与Docker?

ca1c2owp  于 2023-03-29  发布在  Docker
关注(0)|答案(2)|浏览(162)

我在我的docker-compose文件中有这样的容器:

grafana:
  image: grafana/grafana
  ports:
    - '3000:3000'
  environment:
    - GF_PATHS_CONFIG="./grafana/etc/grafana.ini"
    - GF_INSTALL_PLUGINS=grafana-piechart-panel,grafana-worldmap-panel,vertamedia-clickhouse-datasource,vertamedia-chtable

在grafana.ini中,我尝试更改默认的管理员登录名和密码,如下所示:

[security]

admin_user = user
admin_password = 1234

但是我不喜欢。我怎么能在Docker中正确使用Grafana的自定义.ini文件?

**Grafana版本:**Grafana v7.4.3(010 f20 c1 c8)

lqfhib0f

lqfhib0f1#

所以,当我看到你的合成文件时,我想到了两件事。
1.是否需要更改配置路径?
1.我的自定义.ini文件在哪里?
当运行一个带有官方镜像的容器(如grafana/grafana)时,我们不能在没有从外部输入的情况下更改配置。所以你应该在你的compose文件中将它指定为“卷”。

version: "3.9"
services:
  grafana:
    image: grafana/grafana
    ports:
      - '3000:3000'
    environment:
      - GF_INSTALL_PLUGINS=grafana-piechart-panel,grafana-worldmap-panel,vertamedia-clickhouse-datasource
    volumes:
      - "./grafana.ini:/etc/grafana/grafana.ini"
      - "grafana-storage:/var/lib/grafana"
volumes:
  grafana-storage:

另外,你必须把你的grafana.ini文件放在同一个目录下,这个compose文件才能运行:

[security]

admin_user = user
admin_password = 1234

它应该在运行docker-compose up时工作。
P.S.我删除了vertamedia-chtable插件,因为安装程序找不到它,grafana提出了一个错误。

ux6nzvsh

ux6nzvsh2#

或者,你可以通过.env文件将每个配置参数提供给grafana。在这种情况下,你不必将配置文件存储在docker-compose目录中。
对于您的情况,它看起来像这样:

version: "3.9"
services:
  grafana:
    image: grafana/grafana
    ports:
      - '3000:3000'
    env_file:
      - config.env
    volumes:
      - "grafana-storage:/var/lib/grafana"
volumes:
  grafana-storage:

config.env:

GF_SECURITY_ADMIN_USER=user
GF_SECURITY_ADMIN_PASSWORD=1234
GF_INSTALL_PLUGINS=grafana-piechart-panel,grafana-worldmap-panel,vertamedia-clickhouse-datasource

有关覆盖配置的更多信息,请访问:https://grafana.com/docs/grafana/next/setup-grafana/configure-grafana/#override-configuration-with-environment-variables

相关问题