Fix missed libraries 09/85309/7
authorDmitry Puzikov <dmitry.puzikov@tieto.com>
Fri, 12 Apr 2019 09:21:58 +0000 (11:21 +0200)
committerDmitry Puzikov <dmitry.puzikov@tieto.com>
Tue, 23 Jul 2019 08:18:27 +0000 (10:18 +0200)
Install missed libcurl3(libcurl.so.4 by OpenSSL)
required by embedded mongo on arm64 in some
inherited images.

Change-Id: Ie2684c42d5c6330aea553dc708817a87e4abf36b
Issue-ID: INT-1024
Signed-off-by: Dmitry Puzikov <dmitry.puzikov@tieto.com>
Dockerfiles/aai-common/Dockerfile.alpine [new file with mode: 0644]
Dockerfiles/aai-common/Dockerfile.ubuntu [moved from Dockerfiles/aai-common/Dockerfile with 92% similarity]
Dockerfiles/aai-common/README.md

diff --git a/Dockerfiles/aai-common/Dockerfile.alpine b/Dockerfiles/aai-common/Dockerfile.alpine
new file mode 100644 (file)
index 0000000..0ca3a6f
--- /dev/null
@@ -0,0 +1,36 @@
+FROM openjdk:8-jre-alpine3.9
+
+# Set the version of the gosu command and if needs to be, it can be modified at runtime
+ENV GOSU_VERSION 1.10
+
+# For building the image in a proxy environment if necessary
+ARG HTTP_PROXY
+ARG HTTPS_PROXY
+ARG no_proxy
+
+ENV HTTP_PROXY   ${HTTP_PROXY}
+ENV HTTPS_PROXY  ${HTTPS_PROXY}
+ENV http_proxy   ${HTTP_PROXY}
+ENV https_proxy  ${HTTPS_PROXY}
+ENV no_proxy  127.0.0.1,localhost,${no_proxy}
+
+RUN \
+    # Put all the dependencies into this variable to easily install everything
+    DEPS="ca-certificates \
+            curl \
+            dpkg \
+            jq \
+            loksh \
+            bash \
+            netcat-openbsd \
+            openssl \
+            shadow \
+            util-linux \
+            wget" \
+        && apk add --no-cache ${DEPS} \
+        # Get the dpkg to properly download and install that version compatible to install GOSU on the image
+        && dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')" \
+        # Downloads the gosu command based on the dpkg version and gosu version supplied
+        && wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch" \
+        # Use GPG to install the gosu application locally
+        && chmod +x /usr/local/bin/gosu
similarity index 92%
rename from Dockerfiles/aai-common/Dockerfile
rename to Dockerfiles/aai-common/Dockerfile.ubuntu
index fb7b667..df9c247 100644 (file)
@@ -18,7 +18,7 @@ RUN \
     # Creates the group and user with the name aaiadmin for aai
     #groupadd -r aaiadmin && useradd -r -g aaiadmin aaiadmin && \
     # Put all the dependencies into this variable to easily install everything
-    DEPS="wget ca-certificates curl ksh git openjdk-8-jre-headless jq vim netcat uuid-runtime" &&  \
+    DEPS="ca-certificates curl git jq ksh libcurl3 netcat openjdk-8-jre-headless vim uuid-runtime wget" &&  \
     # Run the update before for the package manager to properly fetch install packages
     apt-get update && \
     # Install the recommended dependencies
index e61c63f..0726e26 100644 (file)
@@ -7,7 +7,8 @@ Run the following command if building the image in internal network
 ```bash
     export NEW_VERSION=<NEW_VERSION>
     docker build \
-           -t aaionap/aai-common:${NEW_VERSION} .
+           -t aaionap/aai-common:${NEW_VERSION}${BASE_TAG:-"-alpine"} -f <Dockerfile.alpine | Dockerfile.ubuntu> .
 ```
 
 Replace the NEW\_VERSION with the new docker image version for aai-common
+If different based images are required replace BASE\_TAG accordingly to the base image used.