aboutsummaryrefslogtreecommitdiff
path: root/docker
diff options
context:
space:
mode:
authorMathias Ewald <mewald@evoila.de>2016-07-25 08:51:58 +0000
committerzhubingbing <1392607554@qq.com>2016-09-12 08:03:39 +0000
commit6417595b9f822c44a86bf1ac905f9ac19344000d (patch)
tree8f4adc9b9b5d14f0a5b5fbda5b90b329fc8ae612 /docker
parent8c0f8daa22e3163041fc2bb5cd1ba5939247e600 (diff)
downloadkolla-6417595b9f822c44a86bf1ac905f9ac19344000d.tar.gz
kolla-6417595b9f822c44a86bf1ac905f9ac19344000d.zip
Added grafana container
Added grafana repository to base image Co-Authored-By: zhubingbing <zhubingbing10@gmail.com> Installed grafana from repository Change-Id: Ib99195ec4522f185f6fd4cebf10e305bb58f69c4 Partially-Implements: Blueprint performance-monitoring
Diffstat (limited to 'docker')
-rw-r--r--docker/base/Dockerfile.j29
-rw-r--r--docker/base/grafana.repo7
-rw-r--r--docker/base/sources.list.debian3
-rw-r--r--docker/base/sources.list.ubuntu3
-rw-r--r--docker/grafana/Dockerfile.j222
-rw-r--r--docker/grafana/extend_start.sh9
-rw-r--r--docker/grafana/grafana_sudoers2
7 files changed, 53 insertions, 2 deletions
diff --git a/docker/base/Dockerfile.j2 b/docker/base/Dockerfile.j2
index ed2a4c5e0..4d5f4dc1b 100644
--- a/docker/base/Dockerfile.j2
+++ b/docker/base/Dockerfile.j2
@@ -37,7 +37,8 @@ RUN if [ $(awk '{match($0, /[0-9]+/,version)}END{print version[0]}' /etc/system-
'elasticsearch.repo',
'kibana.yum.repo',
'MariaDB.repo',
- 'influxdb.repo'
+ 'influxdb.repo',
+ 'grafana.repo'
] %}
{% for repo_file in base_yum_repo_files | customizable('yum_repo_files') %}
COPY {{ repo_file }} /etc/yum.repos.d/{{ repo_file }}
@@ -51,7 +52,9 @@ COPY {{ repo_file }} /etc/yum.repos.d/{{ repo_file }}
'http://yum.mariadb.org/RPM-GPG-KEY-MariaDB',
'/etc/pki/rpm-gpg/RPM-GPG-KEY-Percona ',
'https://packages.elastic.co/GPG-KEY-elasticsearch',
- 'https://repos.influxdata.com/influxdb.key'
+ 'https://repos.influxdata.com/influxdb.key',
+ 'https://packagecloud.io/gpg.key',
+ 'https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana'
] %}
RUN true {% for key in base_yum_repo_keys | customizable('yum_repo_keys') %}&& rpm --import {{ key }} {% endfor %}
@@ -231,6 +234,7 @@ COPY apt_preferences.{{ base_distro }} /etc/apt/preferences
'46095ACC8548582C1A2699A9D27D666CD88E42B4',
'58118E89F3A912897C070ADBF76221572C52609D',
'05CE15085FC09D18E99EFB22684A14CF2582E0C5',
+ '418A7F2FB0E1E6E7EABF6FE8C2E73424D59097AB',
] %}
{% elif base_distro == 'debian' %}
{% set base_apt_keys = [
@@ -239,6 +243,7 @@ COPY apt_preferences.{{ base_distro }} /etc/apt/preferences
'0xcbcb082a1bb943db',
'D27D666CD88E42B4',
'05CE15085FC09D18E99EFB22684A14CF2582E0C5',
+ '418A7F2FB0E1E6E7EABF6FE8C2E73424D59097AB',
] %}
{% set base_apt_packages = base_apt_packages +
['sudo',]
diff --git a/docker/base/grafana.repo b/docker/base/grafana.repo
new file mode 100644
index 000000000..dc8d30b44
--- /dev/null
+++ b/docker/base/grafana.repo
@@ -0,0 +1,7 @@
+[grafana]
+name=grafana
+baseurl=https://packagecloud.io/grafana/stable/el/7/$basearch
+repo_gpgcheck=1
+enabled=1
+gpgcheck=1
+gpgkey=https://packagecloud.io/gpg.key https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana
diff --git a/docker/base/sources.list.debian b/docker/base/sources.list.debian
index fc14f672f..0827055ed 100644
--- a/docker/base/sources.list.debian
+++ b/docker/base/sources.list.debian
@@ -27,3 +27,6 @@ deb http://apt.dockerproject.org/repo debian-jessie main
# InfluxDB repo
deb https://repos.influxdata.com/debian jessie stable
+
+# Grafana repo
+deb https://packagecloud.io/grafana/stable/debian/ jessie main
diff --git a/docker/base/sources.list.ubuntu b/docker/base/sources.list.ubuntu
index 510293712..15716b7d5 100644
--- a/docker/base/sources.list.ubuntu
+++ b/docker/base/sources.list.ubuntu
@@ -30,3 +30,6 @@ deb http://apt.dockerproject.org/repo ubuntu-xenial main
# InfluxDB repo
deb https://repos.influxdata.com/ubuntu xenial stable
+
+# Grafana repo
+deb https://packagecloud.io/grafana/stable/debian/ jessie main
diff --git a/docker/grafana/Dockerfile.j2 b/docker/grafana/Dockerfile.j2
new file mode 100644
index 000000000..e2be9d6c2
--- /dev/null
+++ b/docker/grafana/Dockerfile.j2
@@ -0,0 +1,22 @@
+FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block grafana_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% set grafana_packages = ['grafana'] %}
+{{ macros.install_packages(grafana_packages | customizable("packages")) }}
+
+RUN usermod -a -G kolla grafana
+
+WORKDIR /usr/share/grafana
+
+COPY grafana_sudoers /etc/sudoers.d/kolla_grafana_sudoers
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+
+{% block grafana_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+{{ include_footer }}
+
+USER grafana
diff --git a/docker/grafana/extend_start.sh b/docker/grafana/extend_start.sh
new file mode 100644
index 000000000..22f57a656
--- /dev/null
+++ b/docker/grafana/extend_start.sh
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+if [[ ! -d "/var/log/kolla/grafana" ]]; then
+ mkdir -p /var/log/kolla/grafana
+fi
+if [[ $(stat -c %a /var/log/kolla/grafana) != "755" ]]; then
+ chmod 755 /var/log/kolla/grafana
+fi
+
diff --git a/docker/grafana/grafana_sudoers b/docker/grafana/grafana_sudoers
new file mode 100644
index 000000000..98af2f54e
--- /dev/null
+++ b/docker/grafana/grafana_sudoers
@@ -0,0 +1,2 @@
+
+%kolla ALL=(root) NOPASSWD: /usr/bin/chown -R grafana\: /var/lib/grafana/, /bin/chown -R grafana\: /var/lib/grafana/