diff --git a/grafana/Dockerfile b/grafana/Dockerfile index 701da6c..ecce5d3 100644 --- a/grafana/Dockerfile +++ b/grafana/Dockerfile @@ -1,18 +1,19 @@ FROM grafana/grafana:latest MAINTAINER Mateusz Trojak -LABEL version="1.0" -LABEL description="Grafana Image with added system variables" +LABEL version="1.1" +LABEL description="Grafana docker image with custom setup" + +USER root RUN apt-get -q update &&\ DEBIAN_FRONTEND="noninteractive" apt-get -q upgrade -y -o Dpkg::Options::="--force-confnew" --no-install-recommends &&\ - DEBIAN_FRONTEND="noninteractive" apt-get -q install -y -o Dpkg::Options::="--force-confnew" --no-install-recommends curl &&\ + DEBIAN_FRONTEND="noninteractive" apt-get -q install -y -o Dpkg::Options::="--force-confnew" --no-install-recommends curl gosu &&\ apt-get -q autoremove &&\ apt-get -q clean -y && rm -rf /var/lib/apt/lists/* && rm -f /var/cache/apt/*.bin -#RUN rm -fv /run.sh ADD run.sh /run.sh RUN chmod +x /run.sh -RUN mkdir /opt/grafana -ADD ["*.json", "/opt/grafana/"] +RUN mkdir -p /opt/grafana/dashboards +ADD ["*.json", "/opt/grafana/dashboards/"] +ADD ["default-dashboard.yaml", "/etc/grafana/provisioning/dashboards/"] CMD ["/run.sh"] - diff --git a/grafana/default-dashboard.yaml b/grafana/default-dashboard.yaml new file mode 100644 index 0000000..39af3e6 --- /dev/null +++ b/grafana/default-dashboard.yaml @@ -0,0 +1,10 @@ +# # config file version +apiVersion: 1 + +providers: + - name: 'default' + orgId: 1 + folder: '' + type: file + options: + path: /opt/grafana/dashboards diff --git a/grafana/run.sh b/grafana/run.sh index 561bb34..5524ab5 100644 --- a/grafana/run.sh +++ b/grafana/run.sh @@ -3,6 +3,7 @@ : "${GF_PATHS_DATA:=/var/lib/grafana}" : "${GF_PATHS_LOGS:=/var/log/grafana}" : "${GF_PATHS_PLUGINS:=/var/lib/grafana/plugins}" +: "${GF_PATHS_PROVISIONING:=/etc/grafana/provisioning}" chown -R grafana:grafana "$GF_PATHS_DATA" "$GF_PATHS_LOGS" chown -R grafana:grafana /etc/grafana @@ -10,12 +11,17 @@ chown -R grafana:grafana /etc/grafana # Install all available plugins GRAFANA_PLUGINS=`grafana-cli plugins list-remote | awk '{print $2}'| grep "-"` for plugin in ${GRAFANA_PLUGINS}; -do - grafana-cli plugins install $plugin || true; +do + if [ ! -d ${GF_PATHS_PLUGINS}/$plugin ] + then + grafana-cli plugins install $plugin || true; + else + echo "Plugin $plugin already installed" + fi done # Start grafana with gosu -exec gosu grafana /usr/sbin/grafana-server \ +exec gosu grafana /usr/share/grafana/bin/grafana-server \ --homepath=/usr/share/grafana \ --config=/etc/grafana/grafana.ini \ cfg:default.paths.data="$GF_PATHS_DATA" \ diff --git a/influxdb/Dockerfile b/influxdb/Dockerfile index e7bb6be..fd33e72 100644 --- a/influxdb/Dockerfile +++ b/influxdb/Dockerfile @@ -1,7 +1,9 @@ FROM influxdb:latest MAINTAINER Mateusz Trojak -LABEL version="1.0" -LABEL description="InfluxDB Image with added system variables" +LABEL version="1.1" +LABEL description="InfluxDB docker image with custom setup" + +USER root ADD influxdb.template.conf /influxdb.template.conf diff --git a/telegraf/Dockerfile b/telegraf/Dockerfile index 95c3984..185a066 100644 --- a/telegraf/Dockerfile +++ b/telegraf/Dockerfile @@ -1,7 +1,9 @@ FROM telegraf:latest MAINTAINER Mateusz Trojak -LABEL version="1.0" -LABEL description="Telegraf Image with added system variables" +LABEL version="1.1" +LABEL description="Telegraf docker image with custom setup" + +USER root ADD telegraf.template.conf /telegraf.template.conf