Docker: Custom dockerfiles, docker and image rendering docs update (#20492)
Adds support for using custom dockerfiles to pre-install image renderer plugins. Updates docs for docker and image rendering. Fixes #20241 Co-Authored-By: Leonard Gram <leo@xlson.com>
This commit is contained in:
co-authored by
Leonard Gram
parent
caff9146ea
commit
2484b24c75
@@ -31,7 +31,7 @@ if [ ${UBUNTU_BASE} = "0" ]; then
|
||||
DOCKERFILE="Dockerfile"
|
||||
else
|
||||
TAG_SUFFIX="-ubuntu"
|
||||
DOCKERFILE="Dockerfile.ubuntu"
|
||||
DOCKERFILE="ubuntu.Dockerfile"
|
||||
fi
|
||||
|
||||
echo "Building and deploying ${_docker_repo}:${_grafana_tag}${TAG_SUFFIX}"
|
||||
|
||||
@@ -63,7 +63,7 @@ docker_build () {
|
||||
base_image="${base_arch}alpine:3.10"
|
||||
else
|
||||
libc=""
|
||||
dockerfile="Dockerfile.ubuntu"
|
||||
dockerfile="ubuntu.Dockerfile"
|
||||
base_image="${base_arch}ubuntu:18.10"
|
||||
fi
|
||||
|
||||
|
||||
@@ -2,8 +2,31 @@ ARG GRAFANA_VERSION="latest"
|
||||
|
||||
FROM grafana/grafana:${GRAFANA_VERSION}
|
||||
|
||||
USER root
|
||||
|
||||
ARG GF_INSTALL_IMAGE_RENDERER_PLUGIN="false"
|
||||
|
||||
RUN if [ $GF_INSTALL_IMAGE_RENDERER_PLUGIN = "true" ]; then \
|
||||
echo "http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories && \
|
||||
echo "http://dl-cdn.alpinelinux.org/alpine/edge/main" >> /etc/apk/repositories && \
|
||||
echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories && \
|
||||
apk --no-cache upgrade && \
|
||||
apk add --no-cache udev ttf-opensans chromium && \
|
||||
rm -rf /tmp/* && \
|
||||
rm -rf /usr/share/grafana/tools/phantomjs; \
|
||||
fi
|
||||
|
||||
USER grafana
|
||||
|
||||
ENV GF_RENDERER_PLUGIN_CHROME_BIN="/usr/bin/chromium-browser"
|
||||
|
||||
RUN if [ $GF_INSTALL_IMAGE_RENDERER_PLUGIN = "true" ]; then \
|
||||
grafana-cli \
|
||||
--pluginsDir "$GF_PATHS_PLUGINS" \
|
||||
--pluginUrl https://github.com/grafana/grafana-image-renderer/releases/latest/download/plugin-linux-x64-glibc-no-chromium.zip \
|
||||
plugins install grafana-image-renderer; \
|
||||
fi
|
||||
|
||||
ARG GF_INSTALL_PLUGINS=""
|
||||
|
||||
RUN if [ ! -z "${GF_INSTALL_PLUGINS}" ]; then \
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
ARG GRAFANA_VERSION="latest-ubuntu"
|
||||
|
||||
FROM grafana/grafana:${GRAFANA_VERSION}-ubuntu
|
||||
|
||||
USER root
|
||||
|
||||
# Set DEBIAN_FRONTEND=noninteractive in environment at build-time
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
ARG GF_INSTALL_IMAGE_RENDERER_PLUGIN="false"
|
||||
|
||||
RUN if [ $GF_INSTALL_IMAGE_RENDERER_PLUGIN = "true" ]; then \
|
||||
apt-get update && \
|
||||
apt-get upgrade -y && \
|
||||
apt-get install -y chromium-browser && \
|
||||
apt-get autoremove -y && \
|
||||
rm -rf /var/lib/apt/lists/* && \
|
||||
rm -rf /usr/share/grafana/tools/phantomjs; \
|
||||
fi
|
||||
|
||||
USER grafana
|
||||
|
||||
ENV GF_RENDERER_PLUGIN_CHROME_BIN="/usr/bin/chromium-browser"
|
||||
|
||||
RUN if [ $GF_INSTALL_IMAGE_RENDERER_PLUGIN = "true" ]; then \
|
||||
grafana-cli \
|
||||
--pluginsDir "$GF_PATHS_PLUGINS" \
|
||||
--pluginUrl https://github.com/grafana/grafana-image-renderer/releases/latest/download/plugin-linux-x64-glibc-no-chromium.zip \
|
||||
plugins install grafana-image-renderer; \
|
||||
fi
|
||||
|
||||
ARG GF_INSTALL_PLUGINS=""
|
||||
|
||||
RUN if [ ! -z "${GF_INSTALL_PLUGINS}" ]; then \
|
||||
OLDIFS=$IFS; \
|
||||
IFS=','; \
|
||||
for plugin in ${GF_INSTALL_PLUGINS}; do \
|
||||
IFS=$OLDIFS; \
|
||||
grafana-cli --pluginsDir "$GF_PATHS_PLUGINS" plugins install ${plugin}; \
|
||||
done; \
|
||||
fi
|
||||
Reference in New Issue
Block a user