[docker] use `--no-cache-dir` flag to `pip` in dockerfiles to save space 44/116544/1
authorPratik raj <rajpratik71@gmail.com>
Wed, 30 Dec 2020 14:18:54 +0000 (19:48 +0530)
committerPratik raj <rajpratik71@gmail.com>
Wed, 30 Dec 2020 14:18:54 +0000 (19:48 +0530)
using "--no-cache-dir" flag in pip install ,make sure downloaded
packages by pip don't cached on system . This is a best practice
which make sure to fetch from repo instead of using local cached one .
Further , in case of Docker Containers , by restricting caching ,
we can reduce image size.
In term of stats , it depends upon the number of python packages
multiplied by their respective size . e.g for heavy packages with a lot
of dependencies it reduce a lot by don't caching pip packages.

Further , more detail information can be found at

https://medium.com/sciforce/strategies-of-docker-images-optimization-2ca9cc5719b6

Issue-ID: POLICY-2948
Signed-off-by: Pratik Raj <rajpratik71@gmail.com>
Change-Id: I0c4c6ba511bca93a1389c53a91bae9b2d4546ee6

packages/docker/src/main/docker/Dockerfile

index b7f2d62..f6cd242 100644 (file)
@@ -48,9 +48,9 @@ RUN apk update && \
     net-tools netcat-openbsd sudo less vim openssl \
     && update-alternatives --install /usr/bin/python python /usr/bin/python3 0 \
     && update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1 \
-    && pip install --upgrade setuptools http-prompt \
+    && pip install --no-cache-dir --upgrade setuptools http-prompt \
     && pip uninstall -y httpie \
-    && pip install httpie==1.0.3 \
+    && pip install --no-cache-dir httpie==1.0.3 \
     && rm -r /root/.cache
 
 RUN mkdir -p $POLICY_CONFIG $POLICY_LOGS $POLICY_INSTALL_INIT && \