Skip to content

Commit 8f50756

Browse files
author
lijianguo
committed
chore(dockerfile): use drycc/base image
1 parent 01115e7 commit 8f50756

3 files changed

Lines changed: 64 additions & 24 deletions

File tree

grafana/rootfs/Dockerfile

Lines changed: 33 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,40 @@
1-
FROM docker.io/drycc/go-dev:latest AS go-dev
1+
FROM docker.io/drycc/base:bullseye
22

3+
RUN adduser --system \
4+
--shell /bin/bash \
5+
--disabled-password \
6+
--home /usr/share/grafana \
7+
--group \
8+
drycc
39

4-
FROM docker.io/grafana/grafana:8.3.4
5-
USER root
610
COPY . /
7-
COPY --from=go-dev /bin/envtpl /usr/share/grafana/envtpl
8-
RUN echo "https://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories \
9-
&& apk add --update bash fontconfig curl \
10-
&& chmod +x /usr/share/grafana/start-grafana \
11-
&& chmod 644 /usr/share/grafana/grafana.ini.tpl \
12-
&& chmod +x /usr/share/grafana/entrypoint.sh
11+
ENV GRAFANA_VERSION="8.3.6" \
12+
ENVTPL_VERSION="1.0.0"
1313

14+
RUN install-packages fontconfig curl \
15+
&& install-stack grafana $GRAFANA_VERSION \
16+
&& install-stack envtpl $ENVTPL_VERSION \
17+
&& rm -rf \
18+
/usr/share/doc \
19+
/usr/share/man \
20+
/usr/share/info \
21+
/usr/share/locale \
22+
/var/lib/apt/lists/* \
23+
/var/log/* \
24+
/var/cache/debconf/* \
25+
/etc/systemd \
26+
/lib/lsb \
27+
/lib/udev \
28+
/usr/lib/`echo $(uname -m)`-linux-gnu/gconv/IBM* \
29+
/usr/lib/`echo $(uname -m)`-linux-gnu/gconv/EBC* \
30+
&& bash -c "mkdir -p /usr/share/man/man{1..8}" \
31+
&& mkdir /var/lib/grafana -p \
32+
&& chown -R drycc:drycc /opt/drycc/grafana /usr/share/grafana /var/lib/grafana \
33+
&& chmod +x /usr/share/grafana/start-grafana \
34+
&& chmod 644 /usr/share/grafana/grafana.ini.tpl \
35+
&& chmod +x /usr/share/grafana/entrypoint.sh
36+
37+
USER drycc
1438
WORKDIR /usr/share/grafana
15-
ENTRYPOINT ["/usr/share/grafana/entrypoint.sh"]
1639
CMD ["./start-grafana"]
1740
EXPOSE 3000

grafana/rootfs/usr/share/grafana/start-grafana

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ DASHBOARD_LOCATION=${DASHBOARD_JSON_PATH:-"/usr/share/grafana/api/dashboards"}
1919
mkdir /usr/share/grafana/dashboards
2020

2121
echo "Building grafana.ini!"
22-
./envtpl > grafana.ini < grafana.ini.tpl
22+
envtpl > grafana.ini < grafana.ini.tpl
2323
echo "Finished building grafana config..."
2424
echo "###########################################"
2525
echo "###########################################"
@@ -40,7 +40,7 @@ if [ -n "${LDAP_ENDPOINT}" ]; then
4040
fi
4141
export LDAP_HOST=${ldap_url_array[3]//\/\//}
4242
export LDAP_PORT=${ldap_url_array[4]}
43-
./envtpl > ldap.toml < ldap.toml.tpl
43+
envtpl > ldap.toml < ldap.toml.tpl
4444
echo "Finished building ldap config..."
4545
echo "###########################################"
4646
echo "###########################################"
@@ -65,7 +65,7 @@ fi
6565

6666
set -m
6767
echo "Starting Grafana in the background"
68-
exec grafana-server -config /usr/share/grafana/grafana.ini -homepath /usr/share/grafana &
68+
exec grafana-server -config /usr/share/grafana/grafana.ini -homepath /opt/drycc/grafana &
6969
echo "Waiting for Grafana to come up..."
7070
until curl -q --fail --output /dev/null --silent "http://${GRAFANA_USER}:${GRAFANA_PASSWD}@localhost:${GRAFANA_PORT}/api/org"; do
7171
printf "."

telegraf/rootfs/Dockerfile

Lines changed: 28 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,33 @@
1-
FROM docker.io/drycc/go-dev:latest AS go-dev
1+
FROM docker.io/drycc/base:bullseye
22

3-
4-
FROM docker.io/library/telegraf:1.21.2
3+
RUN adduser --system \
4+
--shell /bin/bash \
5+
--disabled-password \
6+
--group \
7+
drycc
58

69
COPY . /
7-
COPY --from=go-dev /bin/envtpl /usr/bin/envtpl
10+
ENV TELEGRAF_VERSION="1.21.3" \
11+
ENVTPL_VERSION="1.0.0" \
12+
JQ_VERSION="1.6"
13+
14+
RUN install-stack telegraf $TELEGRAF_VERSION \
15+
&& install-stack envtpl $ENVTPL_VERSION \
16+
&& install-stack jq $JQ_VERSION \
17+
&& rm -rf \
18+
/usr/share/doc \
19+
/usr/share/man \
20+
/usr/share/info \
21+
/usr/share/locale \
22+
/var/lib/apt/lists/* \
23+
/var/log/* \
24+
/var/cache/debconf/* \
25+
/etc/systemd \
26+
/lib/lsb \
27+
/lib/udev \
28+
/usr/lib/`echo $(uname -m)`-linux-gnu/gconv/IBM* \
29+
/usr/lib/`echo $(uname -m)`-linux-gnu/gconv/EBC* \
30+
&& bash -c "mkdir -p /usr/share/man/man{1..8}"
831

9-
RUN chown -R telegraf /home/telegraf/ \
10-
&& apt-get update \
11-
&& apt-get install -y --no-install-recommends jq \
12-
&& apt-get autoremove -y \
13-
&& apt-get clean -y \
14-
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/man /usr/share/doc
15-
WORKDIR /home/telegraf
32+
USER drycc
1633
CMD ["/home/telegraf/start-telegraf"]

0 commit comments

Comments
 (0)