From 0ab31f4e9e13066be37c4d4dc6b5c117a64b9a18 Mon Sep 17 00:00:00 2001 From: Guangrong Fu Date: Wed, 23 Aug 2017 17:33:56 +0800 Subject: Add a Dockerfile for Docker-making Change the package file from *.zip to *.tar.gz for Linux Add a Dockerfile Change-Id: I9b8213822961bf0997bc32c8ed667b0ea8b3843e Issue-ID: HOLMES-39 Signed-off-by: Guangrong Fu --- engine-d-standalone/linux64-assembly.xml | 2 +- engine-d-standalone/pom.xml | 371 ++++++++++++++--------- engine-d-standalone/src/main/assembly/Dockerfile | 42 +++ 3 files changed, 263 insertions(+), 152 deletions(-) create mode 100644 engine-d-standalone/src/main/assembly/Dockerfile (limited to 'engine-d-standalone') diff --git a/engine-d-standalone/linux64-assembly.xml b/engine-d-standalone/linux64-assembly.xml index 4bb9c11..56676c8 100644 --- a/engine-d-standalone/linux64-assembly.xml +++ b/engine-d-standalone/linux64-assembly.xml @@ -19,7 +19,7 @@ xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd"> linux64 - zip + tar.gz false diff --git a/engine-d-standalone/pom.xml b/engine-d-standalone/pom.xml index bb72317..791dc8f 100644 --- a/engine-d-standalone/pom.xml +++ b/engine-d-standalone/pom.xml @@ -17,158 +17,227 @@ --> - - org.onap.holmes.engine-management - holmes-engine-parent - 1.0.0-SNAPSHOT - + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + + org.onap.holmes.engine-management + holmes-engine-parent + 1.0.0-SNAPSHOT + - holmes-engine-d-standalone - 4.0.0 - holmes-engine/holmes-engine-d-standalone - pom + holmes-engine-d-standalone + 4.0.0 + holmes-engine/holmes-engine-d-standalone + pom - - - - maven-resources-plugin - - - copy-resources-${linux64id} - process-resources - - copy-resources - - - ${linux64outputdir} - - - src/main/assembly/ - false - - **/* - - - **/*.bat - - - - true - - - - copy-resources-${win64id} - process-resources - - copy-resources - - - ${win64outputdir} - - - src/main/assembly/ - false - - **/* - - - **/*.sh - - - - true - - - - - - org.apache.maven.plugins - maven-dependency-plugin - - - copy-jar-${linux64id} - - copy - - prepare-package - - - - org.onap.holmes.engine-management - holmes-engine-d - jar - true - ${linux64outputdir} - holmes-engine-d.jar - - - - - - copy-jar-${win64id} - - copy - - prepare-package - - - - org.onap.holmes.engine-management - holmes-engine-d - jar - true - ${win64outputdir} - holmes-engine-d.jar - - - - - - - - org.apache.maven.plugins - maven-assembly-plugin - - - linux64 - - - linux64-assembly.xml - - true - target/version - - package - - attached - - - - win64 - - - win64-assembly.xml - - true - target/version - - package - - attached - - - - - - + + + + maven-resources-plugin + + + copy-resources-${linux64id} + process-resources + + copy-resources + + + ${linux64outputdir} + + + src/main/assembly/ + false + + **/* + + + **/*.bat + + + + true + + + + copy-resources-${win64id} + process-resources + + copy-resources + + + ${win64outputdir} + + + src/main/assembly/ + false + + **/* + + + **/*.sh + + + + true + + + + copy-dockerfile + process-resources + + copy-resources + + + target/version + + + src/main/assembly/ + false + + Dockerfile + + + + true + + + + + + org.apache.maven.plugins + maven-dependency-plugin + + + copy-jar-${linux64id} + + copy + + prepare-package + + + + org.onap.holmes.engine-management + holmes-engine-d + jar + true + ${linux64outputdir} + holmes-engine-d.jar + + + + + + copy-jar-${win64id} + + copy + + prepare-package + + + + org.onap.holmes.engine-management + holmes-engine-d + jar + true + ${win64outputdir} + holmes-engine-d.jar + + + + + + + + org.apache.maven.plugins + maven-assembly-plugin + + + linux64 + + + linux64-assembly.xml + + true + target/version + + package + + attached + + + + win64 + + + win64-assembly.xml + + true + target/version + + package + + attached + + + + + + - - - org.onap.holmes.engine-management - holmes-engine-d - ${project.version} - - + + + docker + + + + io.fabric8 + docker-maven-plugin + 0.16.5 + false + + + + onap/holmes/engine-management + + try + ${basedir}/target/version/ + ${basedir}/target/version/Dockerfile + + ${project.version}-STAGING-latest + + + + + + + + generate-images + package + + build + + + + + push-images + deploy + + build + push + + + + + + + + + + + + org.onap.holmes.engine-management + holmes-engine-d + ${project.version} + + diff --git a/engine-d-standalone/src/main/assembly/Dockerfile b/engine-d-standalone/src/main/assembly/Dockerfile new file mode 100644 index 0000000..03f09c2 --- /dev/null +++ b/engine-d-standalone/src/main/assembly/Dockerfile @@ -0,0 +1,42 @@ +FROM openresty/openresty:alpine + +MAINTAINER "Guangrong Fu" + +#install java-1.8-openjdk + +ENV LANG C.UTF-8 + +# add a simple script that can auto-detect the appropriate JAVA_HOME value +# based on whether the JDK or only the JRE is installed +RUN { \ + echo '#!/bin/sh'; \ + echo 'set -e'; \ + echo; \ + echo 'dirname "$(dirname "$(readlink -f "$(which javac || which java)")")"'; \ + } > /usr/local/bin/docker-java-home \ + && chmod +x /usr/local/bin/docker-java-home +ENV JAVA_HOME /usr/lib/jvm/java-1.8-openjdk +ENV PATH $PATH:/usr/lib/jvm/java-1.8-openjdk/jre/bin:/usr/lib/jvm/java-1.8-openjdk/bin + +ENV JAVA_VERSION 8u131 +ENV JAVA_ALPINE_VERSION 8.131.11-r2 + +RUN set -x \ + && apk add --no-cache \ + openjdk8="$JAVA_ALPINE_VERSION" \ + && [ "$JAVA_HOME" = "$(docker-java-home)" ] + +#add holmes related resources to the docker image + +RUN mkdir /home/holmes + +WORKDIR /home/holmes + +ADD holmes-engine-d-standalone-*-linux64.tar.gz /home/holmes/ + +RUN chmod 755 /home/holmes/bin/*.sh + + +CMD /home/holmes/bin/run.sh + + -- cgit 1.2.3-korg