diff options
author | Markus Pöschl <Poeschl@users.noreply.github.com> | 2021-05-14 13:32:32 +0200 |
---|---|---|
committer | Markus Pöschl <Poeschl@users.noreply.github.com> | 2021-05-15 14:38:37 +0200 |
commit | 781c9961cb26da0821f6fc460e1fc1640cb5f8ec (patch) | |
tree | 27fdaed3b06cdee069b9b8a7c62fd86ed403c71e /docker-files/debian.Dockerfile | |
parent | 89d3cb09d883e552a894ebfcd7a66758ce042d74 (diff) |
Migrate to multistaged Dockerfile for debian images.
Diffstat (limited to 'docker-files/debian.Dockerfile')
-rw-r--r-- | docker-files/debian.Dockerfile | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/docker-files/debian.Dockerfile b/docker-files/debian.Dockerfile new file mode 100644 index 00000000..75e60c7c --- /dev/null +++ b/docker-files/debian.Dockerfile @@ -0,0 +1,56 @@ +# +# Glances Dockerfile (based on Debian) +# +# https://github.com/nicolargo/glances +# + +ARG ARCH +FROM ${ARCH}python:3.9-slim-buster as build + +# Install package +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + python3-dev \ + curl \ + gcc \ + lm-sensors \ + wireless-tools \ + iputils-ping && \ + apt-get clean && rm -rf /var/lib/apt/lists/* + +# Force rebuild otherwise it could be cached without rerun +ARG VCS_REF +RUN pip3 install --no-cache-dir --user glances[all] + +FROM build as additional-packages + +COPY *requirements.txt . + +RUN CASS_DRIVER_NO_CYTHON=1 pip3 install --no-cache-dir --user -r optional-requirements.txt + + +#Create running image without any building dependency +FROM ${ARCH}python:3.9-slim-buster as minimal + +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + curl \ + lm-sensors \ + wireless-tools \ + iputils-ping && \ + apt-get clean && rm -rf /var/lib/apt/lists/* + +COPY --from=build /root/.local/bin /usr/local/bin/ +COPY --from=build /root/.local/lib/python3.9/site-packages /usr/local/lib/python3.9/site-packages/ + +# EXPOSE PORT (XMLRPC / WebUI) +EXPOSE 61209 61208 + +# Define default command. +CMD python3 -m glances -C /glances/conf/glances.conf $GLANCES_OPT + + +FROM minimal as full + +COPY --from=additional-packages /root/.local/lib/python3.9/site-packages /usr/local/lib/python3.9/site-packages/ + |