Optimize Alpine Dockerfiles
authorCédric Ollivier <cedric.ollivier@orange.com>
Wed, 13 Sep 2017 04:15:32 +0000 (06:15 +0200)
committerCédric Ollivier <cedric.ollivier@orange.com>
Wed, 13 Sep 2017 17:13:10 +0000 (19:13 +0200)
It mainly splits vnfs runtime and build dependencies to save space at
the end.

Change-Id: I8307fa416066cc8c50b96862de8bafd2c47a2ace
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
docker/features/Dockerfile
docker/restapi/Dockerfile
docker/vnf/Dockerfile

index c70b362..8b0a2f6 100644 (file)
@@ -7,7 +7,7 @@ COPY thirdparty-requirements.txt thirdparty-requirements.txt
 RUN apk --no-cache add --update nodejs nodejs-npm python3 sshpass && \
     apk --no-cache add --virtual .build-deps --update \
         python-dev build-base linux-headers libffi-dev \
-        openssl-dev libjpeg-turbo-dev git && \
+        openssl-dev libjpeg-turbo-dev && \
     pip install --no-cache-dir --src /src \
         -chttps://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=$OPENSTACK_TAG \
         -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH \
index 4b447a2..2c75602 100644 (file)
@@ -9,11 +9,12 @@ ARG VIMS_TAG=stable
 
 COPY thirdparty-requirements.txt thirdparty-requirements.txt
 RUN apk --no-cache add --update nodejs nodejs-npm python3 sshpass \
-        ruby ruby-dev ruby-bundler ruby-irb ruby-rdoc dnsmasq \
-        procps git g++ make libxslt-dev libxml2-dev zlib-dev libffi-dev && \
+        ruby ruby-bundler ruby-irb ruby-rdoc dnsmasq \
+        procps libxslt libxml2 zlib libffi && \
     apk --no-cache add --virtual .build-deps --update \
         python-dev build-base linux-headers libffi-dev \
-        openssl-dev libjpeg-turbo-dev git && \
+        openssl-dev libjpeg-turbo-dev \
+        ruby-dev g++ make libxslt-dev libxml2-dev zlib-dev libffi-dev && \
     git clone --depth 1 https://github.com/openstack/refstack-client.git /src/refstack-client && \
     (cd src/refstack-client && git checkout -b $REFSTACK_TAG) && \
     update-requirements -s --source /src/openstack-requirements /src/refstack-client/ && \
index d4f18c4..36e80d7 100644 (file)
@@ -3,10 +3,13 @@ FROM opnfv/functest-core
 ARG VIMS_TAG=stable
 
 RUN apk --no-cache add --update \
-        ruby ruby-dev ruby-bundler ruby-irb ruby-rdoc dnsmasq \
-        procps git g++ make libxslt-dev libxml2-dev zlib-dev libffi-dev && \
+        ruby ruby-bundler ruby-irb ruby-rdoc dnsmasq \
+        procps libxslt libxml2 zlib libffi && \
+    apk --no-cache add --virtual .build-deps --update \
+        ruby-dev g++ make libxslt-dev libxml2-dev zlib-dev libffi-dev && \
     git clone --depth 1 -b $VIMS_TAG https://github.com/boucherv-orange/clearwater-live-test /src/vims-test && \
     rm -r /src/vims-test/.git && \
-    cd /src/vims-test && bundle config build.nokogiri --use-system-libraries && bundle install --system
+    cd /src/vims-test && bundle config build.nokogiri --use-system-libraries && bundle install --system && \
+    apk del .build-deps
 COPY testcases.yaml /usr/lib/python2.7/site-packages/functest/ci/testcases.yaml
 CMD ["bash","-c","prepare_env start && run_tests -t all"]