Replace base to alpine 15/24315/1
authorAreli Fuss <af732p@att.com>
Sun, 19 Nov 2017 11:28:08 +0000 (13:28 +0200)
committerAreli Fuss <af732p@att.com>
Sun, 19 Nov 2017 14:33:43 +0000 (16:33 +0200)
Replace the docker base to slim linux based
on Alpine and optimize the docker file

Change-Id: I82035cfaa259b9323b64e206ad09c0431230fcdd
Issue-Id: SDC-660
Signed-off-by: Areli Fuss <af732p@att.com>
base_sdc-elasticsearch/Dockerfile
base_sdc-jetty/Dockerfile [moved from base_sdc-backend/Dockerfile with 59% similarity]
base_sdc-sanity/Dockerfile
pom.xml

index 09e8e78..e2f1e86 100644 (file)
@@ -1,4 +1,4 @@
-FROM elasticsearch:2.1.2
+FROM elasticsearch:2.4.6-alpine
 
 ARG HTTP_PROXY
 ARG HTTPS_PROXY
@@ -9,13 +9,14 @@ ENV HTTPS_PROXY ${HTTPS_PROXY}
 RUN if [ ! -z ${HTTP_PROXY} ]; then echo "Acquire::http::proxy  \"${HTTP_PROXY}\";" >> /etc/apt/apt.conf; fi && \
     if [ ! -z ${HTTPS_PROXY} ]; then echo "Acquire::https::proxy \"${HTTPS_PROXY}\";" >> /etc/apt/apt.conf; fi
 
-RUN apt-get -y update && apt-get -y install \
-    apt-utils \
+RUN apk add --no-cache \
     curl \
-    vim
+    vim \
+    && :
 
 RUN mkdir -p /var/chef/nodes
 
-# install chef-solo
-RUN curl -L https://omnitruck.chef.io/install.sh | bash
-
+# Install Chef
+RUN set -ex && \
+    apk add --no-cache bash build-base ruby ruby-dev libffi-dev libxml2-dev && \
+    gem install chef berkshelf io-console --no-document
similarity index 59%
rename from base_sdc-backend/Dockerfile
rename to base_sdc-jetty/Dockerfile
index ca47370..d4283be 100644 (file)
@@ -1,4 +1,4 @@
-FROM jetty:9.3-jre8
+FROM jetty:9.3-jre8-alpine
 
 ARG HTTP_PROXY
 ARG HTTPS_PROXY
@@ -9,23 +9,24 @@ ENV HTTPS_PROXY ${HTTPS_PROXY}
 RUN if [ ! -z ${HTTP_PROXY} ]; then echo "Acquire::http::proxy  \"${HTTP_PROXY}\";" >> /etc/apt/apt.conf; fi && \
     if [ ! -z ${HTTPS_PROXY} ]; then echo "Acquire::https::proxy \"${HTTPS_PROXY}\";" >> /etc/apt/apt.conf; fi
 
-
 USER root
 
-RUN apt-get -y update && apt-get -y install \
-    apt-utils \
-    curl \
-    vim \
+RUN apk add --no-cache \
     jq \
+    curl \
+    curl-dev \
+    openssl-dev \
     python \
-    libssl-dev \
-    libcurl4-openssl-dev \
     python-dev \
-    gcc \
-    python-pip
+    py-pip \
+    py-setuptools \
+    vim \
+    && :
 
-# install chef-solo
-RUN curl -L https://omnitruck.chef.io/install.sh | bash
+# Install Chef
+RUN set -ex && \
+    apk add --no-cache bash build-base ruby ruby-dev libffi-dev libxml2-dev && \
+    gem install chef berkshelf io-console --no-document
 
 RUN pip install pycurl
 
index 29f8b20..dee2bde 100644 (file)
@@ -1,4 +1,4 @@
-FROM ubuntu:16.04
+FROM openjdk:8-jdk-alpine
 
 ARG HTTP_PROXY
 ARG HTTPS_PROXY
@@ -7,18 +7,14 @@ ENV HTTP_PROXY  ${HTTP_PROXY}
 ENV HTTPS_PROXY ${HTTPS_PROXY}
 
 RUN if [ ! -z ${HTTP_PROXY} ]; then echo "Acquire::http::proxy  \"${HTTP_PROXY}\";" >> /etc/apt/apt.conf; fi
-RUN if [ ! -z ${HTTPS_PROXY} ]; then echo "Acquire::https::proxy \"${HTTPS_PROXY}\";" >> /etc/apt/apt.conf; fi 
+RUN if [ ! -z ${HTTPS_PROXY} ]; then echo "Acquire::https::proxy \"${HTTPS_PROXY}\";" >> /etc/apt/apt.conf; fi
 
-RUN apt-get -y update && apt-get -y install --no-install-recommends \
-    apt-utils \
+RUN apk add --no-cache \
     curl \
-    default-jre \
-    openjdk-8-jdk \
-    vim
-
-# Set Java links
-RUN update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
-
-# install chef-solo
-RUN curl -L https://omnitruck.chef.io/install.sh | bash
+    vim \
+    && :
 
+# Install Chef
+RUN set -ex && \
+    apk add --no-cache bash build-base ruby ruby-dev libffi-dev libxml2-dev && \
+    gem install chef berkshelf io-console --no-document
diff --git a/pom.xml b/pom.xml
index d5caf63..6302e5c 100644 (file)
--- a/pom.xml
+++ b/pom.xml
             <version>0.15.1</version>
             <configuration>
                 <images>
-                    <!-- base_sdc-backend  -->
+                    <!-- base_sdc-jetty  for backend and frontend  -->
                     <image>
-                        <name>openecomp/base_sdc-backend</name>
-                        <alias>base_sdc-backend</alias>
+                        <name>openecomp/base_sdc-jetty</name>
+                        <alias>base_sdc-jetty</alias>
                         <build>
                             <cleanup>true</cleanup>
                             <tags>
                                 <tag>${docker.tag}</tag>
                                 <tag>${docker.latest.tag}</tag>
                             </tags>
-                            <dockerFileDir>${project.basedir}/base_sdc-backend</dockerFileDir>
+                            <dockerFileDir>${project.basedir}/base_sdc-jetty</dockerFileDir>
                         </build>
                     </image>
-                    <!-- base_sdc-frontend  -->
-                    <image>
-                        <name>openecomp/base_sdc-frontend</name>
-                        <alias>base_sdc-frontend</alias>
-                        <build>
-                            <cleanup>true</cleanup>
-                            <tags>
-                                <tag>${docker.tag}</tag>
-                                <tag>${docker.latest.tag}</tag>
-                            </tags>
-                            <dockerFileDir>${project.basedir}/base_sdc-frontend</dockerFileDir>
-                        </build>
-                    </image>
-                           <!-- base_sdc-frontend  -->
+                           <!-- base_sdc-kibana  -->
                     <image>
                         <name>openecomp/base_sdc-kibana</name>
                         <alias>base_sdc-kibana</alias>
                     </goals>
                     <configuration>
                         <removeAll>true</removeAll>
-                        <image>openecomp/base_sdc-backend,openecomp/base_sdc-frontend,openecomp/base_sdc-elasticsearch,openecomp/base_sdc-kibana,openecomp/base_sdc-cassandra,openecomp/base_sdc-sanity</image>
+                        <image>openecomp/base_sdc-jetty,openecomp/base_sdc-frontend,openecomp/base_sdc-elasticsearch,openecomp/base_sdc-kibana,openecomp/base_sdc-cassandra,openecomp/base_sdc-sanity</image>
                     </configuration>
                 </execution>
 
                     <id>push-images</id>
                     <phase>deploy</phase>
                     <goals>
-                        <goal>build</goal>
                         <goal>push</goal>
                     </goals>
                     <configuration>
-                        <image>openecomp/base_sdc-backend,openecomp/base_sdc-frontend,openecomp/base_sdc-elasticsearch,openecomp/base_sdc-kibana,openecomp/base_sdc-cassandra,openecomp/base_sdc-sanity</image>
+                        <image>openecomp/base_sdc-jetty,openecomp/base_sdc-frontend,openecomp/base_sdc-elasticsearch,openecomp/base_sdc-kibana,openecomp/base_sdc-cassandra,openecomp/base_sdc-sanity</image>
                     </configuration>
                 </execution>
             </executions>