Dockerfile was changed to build Grafana version 6.3.3 from oficial site https://grafana.com/grafana/download

#docker pull adept23/grafana:6.3.3

original github repo - https://github.com/stakater/dockerfile-grafana

Grafana Docker Image

This builds a Docker image with the latest master build of Grafana.

Build

./build.sh

Add KairosDB datasource

  http://docs.grafana.org/datasources/kairosdb/
  • Choose "proxy"
  • Then 'metrics names', 'tags', 'values' etc. should pre-populate

Running your Grafana container

Start your container binding the external port 3000.

docker run -d --name=grafana -p 3000:3000 stakater/grafana

Try it out, default admin user is admin/admin.

Configuring your Grafana container

All options defined in conf/grafana.ini can be overriden using environment variables, for example:

docker run \
  -d \
  -p 3000:3000 \
  --name=grafana \
  -e "GF_SERVER_ROOT_URL=http://grafana.server.name" \
  -e "GF_SECURITY_ADMIN_PASSWORD=secret" \
  stakater/grafana

Grafana container with persistent storage (recommended)

# create /var/lib/grafana as persistent volume storage
docker run -d -v /var/lib/grafana --name grafana-storage busybox:latest

# start grafana
docker run \
  -d \
  -p 3000:3000 \
  --name=grafana \
  --volumes-from grafana-storage \
  stakater/grafana

Installing plugins for Grafana 3

Pass the plugins you want installed to docker with the GF_INSTALL_PLUGINS environment variable as a comma seperated list. This will pass each plugin name to grafana-cli plugins install ${plugin}.

docker run \
  -d \
  -p 3000:3000 \
  --name=grafana \
  -e "GF_INSTALL_PLUGINS=grafana-clock-panel,grafana-simple-json-datasource" \
  stakater/grafana

Running specific version of Grafana

# specify right tag, e.g. 2.6.0 - see Docker Hub for available tags
docker run \
  -d \
  -p 3000:3000 \
  --name grafana \
  stakater/grafana:2.6.0

Configuring AWS credentials for CloudWatch support

docker run \
  -d \
  -p 3000:3000 \
  --name=grafana \
  -e "GF_AWS_PROFILES=default" \
  -e "GF_AWS_default_ACCESS_KEY_ID=YOUR_ACCESS_KEY" \
  -e "GF_AWS_default_SECRET_ACCESS_KEY=YOUR_SECRET_KEY" \
  -e "GF_AWS_default_REGION=us-east-1" \
  stakater/grafana

You may also specify multiple profiles to GF_AWS_PROFILES (e.g. GF_AWS_PROFILES=default another).

Supported variables:

  • GF_AWS_${profile}_ACCESS_KEY_ID: AWS access key ID (required).
  • GF_AWS_${profile}_SECRET_ACCESS_KEY: AWS secret access key (required).
  • GF_AWS_${profile}_REGION: AWS region (optional).

Inspiration

	https://github.com/grafana/grafana-docker