From d1aa1794560b997e230287643f478fe3ad02a5d8 Mon Sep 17 00:00:00 2001 From: Dmitry Puzikov Date: Mon, 15 Apr 2019 11:57:14 +0200 Subject: Fixed Dockerfile to reflect new base image name Dockerfile has been changed to reflect new aai-common image naming scheme. Added maven parameter for aai-common image version. Change-Id: I6d1a332ca049676059ccd29031aa7cfb4a95bb5c Issue-ID: INT-803 Signed-off-by: Dmitry Puzikov --- aai-schema-service/pom.xml | 31 ++++++++++++++++++++++- aai-schema-service/src/main/docker/Dockerfile | 23 +++++++---------- aai-schema-service/src/main/docker/aai.sh | 36 +++++++++++++-------------- 3 files changed, 56 insertions(+), 34 deletions(-) diff --git a/aai-schema-service/pom.xml b/aai-schema-service/pom.xml index 41151c8..874d6eb 100644 --- a/aai-schema-service/pom.xml +++ b/aai-schema-service/pom.xml @@ -61,7 +61,7 @@ 2.6.2 - 0.23.0 + 0.28.0 docker.io @@ -75,6 +75,8 @@ ${project.build.directory}/${project.artifactId}-${project.version}-build/ onap + alpine + 1.6.0 true @@ -107,6 +109,33 @@ docker + + org.codehaus.groovy.maven + gmaven-plugin + 1.0 + + + prepare-package + + execute + + + + def userAaiBaseImage = session.userProperties['aai.base.image']; + def userAaiCommonVersion = session.userProperties['aai.base.image.version']; + if (userAaiCommonVersion != null) { + project.properties['aai.base.image.version'] = userAaiCommonVersion; + } + if (userAaiBaseImage != null) { + project.properties['aai.base.image'] = userAaiBaseImage; + } + log.info 'Base image flavour: ' + project.properties['aai.base.image']; + log.info 'Base image version: ' + project.properties['aai.base.image.version']; + + + + + io.fabric8 docker-maven-plugin diff --git a/aai-schema-service/src/main/docker/Dockerfile b/aai-schema-service/src/main/docker/Dockerfile index f15288f..6f5efd4 100644 --- a/aai-schema-service/src/main/docker/Dockerfile +++ b/aai-schema-service/src/main/docker/Dockerfile @@ -1,17 +1,4 @@ -FROM aaionap/aai-common:1.3.0 - - -# Add the proper files into the docker image from your build -WORKDIR /opt/app/aai-schema-service - -# Expose the ports for outside linux to use -# 8447 is the important one to be used -EXPOSE 8447 - - -HEALTHCHECK --interval=40s --timeout=10s --retries=3 CMD nc -z -v localhost 8452 || exit 1 - -ENTRYPOINT ["/bin/bash", "/opt/app/aai-schema-service/docker-entrypoint.sh"] +FROM @aai.docker.namespace@/aai-common-@aai.base.image@:@aai.base.image.version@ RUN mkdir -p /opt/aaihome/aaiadmin /opt/aai/logroot/AAI-SCHEMA-SERVICE @@ -19,6 +6,14 @@ VOLUME /opt/aai/logroot/AAI-SS VOLUME /tmp VOLUME /opt/tools +HEALTHCHECK --interval=40s --timeout=10s --retries=3 CMD nc -z -v localhost 8452 || exit 1 + +# Add the proper files into the docker image from your build +WORKDIR /opt/app/aai-schema-service COPY /maven/aai-schema-service/ . ENV AAI_BUILD_VERSION @aai.docker.version@ +# Expose the ports for outside linux to use +# 8452 is the important one to be used +EXPOSE 8452 +ENTRYPOINT ["/bin/bash", "/opt/app/aai-schema-service/docker-entrypoint.sh"] diff --git a/aai-schema-service/src/main/docker/aai.sh b/aai-schema-service/src/main/docker/aai.sh index 0549935..49c2906 100644 --- a/aai-schema-service/src/main/docker/aai.sh +++ b/aai-schema-service/src/main/docker/aai.sh @@ -20,25 +20,23 @@ # ECOMP is a trademark and service mark of AT&T Intellectual Property. # -PROJECT_HOME=/opt/app/aai-schema-service -export PROJECT_HOME - -JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 -export JAVA_HOME - -AAIENV=dev -export AAIENV - -PATH=/usr/lib/jvm/java-8-openjdk-amd64:$PATH - -PROJECT_OWNER=aaiadmin -PROJECT_GROUP=aaiadmin -PROJECT_UNIXHOMEROOT=/opt/aaihome -export PROJECT_OWNER PROJECT_GROUP PROJECT_UNIXHOMEROOT -umask 0022 - +# set system related env +# and make script compatible both with ubuntu and alpine base images +# jre-alpine image has $JAVA_HOME set and added to $PATH +# ubuntu image requires to set $JAVA_HOME and add java to $PATH manually +if [ -z $JAVA_HOME ] && [ $(grep -i "ID=ubuntu" /etc/os-release | wc -w) -eq 1 ] ; then + export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-`dpkg --print-architecture | awk -F- '{ print $NF }'` + export PATH=$PATH:${JAVA_HOME}/jre/bin:${JAVA_HOME}/bin +fi + +export PROJECT_HOME=/opt/app/aai-schema-service + +export AAIENV=dev + +export PROJECT_OWNER=aaiadmin +export PROJECT_GROUP=aaiadmin +export PROJECT_UNIXHOMEROOT=/opt/aaihome export idns_api_url= export idnscred= export idnstenant= - - +umask 0022 -- cgit 1.2.3-korg