我正在尝试创建具有预先配置的数据源和仪表板的Docker容器。
到目前为止,我可以理解,从v5.0开始,grafana引入了预配功能。
我创建了两个yml文件,第一个是数据源,第二个是仪表板。
但是我不明白docker-compose文件的哪一部分将调用这些datasource.yml和dashboarad.yml文件。我应该使用什么标签等等,下面是我的docker-compose,数据源和仪表板文件的详细信息。
我只能理解的撰写文件中的详细信息是-./grafana/provisioning/:/etc/grafana/provisioning/
,它将某些主机文件夹结构复制到容器中(但不确定)。
docker-compose.yml
grafana:
image: grafana/grafana
links:
- influxdb
ports:
- '3000:3000'
volumes:
- 'grafana:/var/lib/grafana'
- ./grafana/provisioning/:/etc/grafana/provisioning/
Dashboard.yml
apiVersion: 1
providers:
- name: 'Docker Dashboard'
orgId: 1
folder: ''
type: file
disableDeletion: false
updateIntervalSeconds: 10 #how often Grafana will scan for changed dashboards
options:
path: <path-where-I-have-placed-jsonfile>
Datasource.yml
datasources:
- access: 'proxy' # make grafana perform the requests
editable: true # whether it should be editable
is_default: true # whether this should be the default DS
name: 'influx' # name of the datasource
org_id: 1 # id of the organization to tie this datasource to
type: 'influxdb' # type of the data source
url: 'http://<ip-address>:8086' # url of the prom instance
database: 'influx'
version: 1 # well, versioning
答案 0 :(得分:1)
volumes
指令仅在runtime
中运行,而不是build
,如果您希望在COPY
阶段运行,则需要使用build
Dockerfile:
FROM grafana/grafana
COPY ./grafana/provisioning /etc/grafana/provisioning
./grafana/provisioning
应该相对于Dockerfile
撰写:
grafana:
build: .
.
.