diff options
Diffstat (limited to 'packages/apex-pdp-docker')
-rw-r--r-- | packages/apex-pdp-docker/pom.xml | 27 | ||||
-rw-r--r-- | packages/apex-pdp-docker/src/main/docker/Dockerfile | 35 | ||||
-rw-r--r-- | packages/apex-pdp-docker/src/main/docker/suse.Dockerfile | 37 |
3 files changed, 64 insertions, 35 deletions
diff --git a/packages/apex-pdp-docker/pom.xml b/packages/apex-pdp-docker/pom.xml index 23c8b1075..ed5733bb5 100644 --- a/packages/apex-pdp-docker/pom.xml +++ b/packages/apex-pdp-docker/pom.xml @@ -3,6 +3,7 @@ Copyright (C) 2018 Ericsson. All rights reserved. Modifications Copyright (C) 2019-2020 Bell Canada. Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved. + Modifications Copyright (C) 2022 Nordix Foundation. ================================================================================ Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -61,6 +62,31 @@ </execution> </executions> </plugin> + + <plugin> + <groupId>io.github.git-commit-id</groupId> + <artifactId>git-commit-id-maven-plugin</artifactId> + <version>5.0.0</version> + <executions> + <execution> + <id>get-the-git-infos</id> + <goals> + <goal>revision</goal> + </goals> + <phase>initialize</phase> + </execution> + </executions> + <configuration> + <skipPoms>false</skipPoms> + <generateGitPropertiesFile>true</generateGitPropertiesFile> + <includeOnlyProperties> + <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty> + <includeOnlyProperty>^git.commit.id.abbrev$</includeOnlyProperty> + </includeOnlyProperties> + <commitIdGenerationMode>full</commitIdGenerationMode> + </configuration> + </plugin> + <plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> @@ -128,6 +154,7 @@ </execution> </executions> </plugin> + <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> diff --git a/packages/apex-pdp-docker/src/main/docker/Dockerfile b/packages/apex-pdp-docker/src/main/docker/Dockerfile index b788c7fbd..08bcddb05 100644 --- a/packages/apex-pdp-docker/src/main/docker/Dockerfile +++ b/packages/apex-pdp-docker/src/main/docker/Dockerfile @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------- # ============LICENSE_START======================================================= -# Copyright (C) 2020 Nordix Foundation. +# Copyright (C) 2020-2022 Nordix Foundation. # Modification Copyright (C) 2020-2021 AT&T Foundation. # Modifications Copyright (C) 2021 Bell Canada. # ================================================================================ @@ -20,12 +20,22 @@ # ============LICENSE_END========================================================= #------------------------------------------------------------------------------- -# -# Docker file to build an image that runs APEX on Java 11 or better in alpine -# +FROM busybox AS tarball +RUN mkdir /packages /extracted +COPY /maven/apex-pdp-package-full.tar.gz /packages/ +RUN tar xvzf /packages/apex-pdp-package-full.tar.gz --directory /extracted/ + FROM onap/policy-jdk-alpine:2.4.3 LABEL maintainer="Policy Team" +LABEL org.opencontainers.image.title="Policy APEX PDP" +LABEL org.opencontainers.image.description="Policy APEX PDP image based on Alpine" +LABEL org.opencontainers.image.url="https://github.com/onap/policy-apex-pdp" +LABEL org.opencontainers.image.vendor="ONAP Policy Team" +LABEL org.opencontainers.image.licenses="Apache-2.0" +LABEL org.opencontainers.image.created="${git.build.time}" +LABEL org.opencontainers.image.version="${git.build.version}" +LABEL org.opencontainers.image.revision="${git.commit.id.abbrev}" ARG POLICY_LOGS=/var/log/onap/policy/apex-pdp ENV POLICY_HOME=/opt/app/policy/apex-pdp @@ -36,20 +46,11 @@ RUN apk update \ vim \ iputils \ && addgroup -S apexuser && adduser -S apexuser -G apexuser \ - && mkdir -p $POLICY_HOME \ - && mkdir -p $POLICY_LOGS \ - && chown -R apexuser:apexuser $POLICY_LOGS \ - && mkdir /packages + && mkdir -p $POLICY_HOME $POLICY_LOGS \ + && chown -R apexuser:apexuser $POLICY_HOME $POLICY_LOGS -COPY /maven/apex-pdp-package-full.tar.gz /packages -RUN tar xvfz /packages/apex-pdp-package-full.tar.gz --directory $POLICY_HOME \ - && rm /packages/apex-pdp-package-full.tar.gz \ - && find /opt/app -type d -perm 755 \ - && find /opt/app -type f -perm 644 \ - && chmod 755 $POLICY_HOME/bin/* \ - && cp -pr $POLICY_HOME/examples /home/apexuser \ - && chown -R apexuser:apexuser /home/apexuser/* $POLICY_HOME \ - && chmod 755 $POLICY_HOME/etc/* +COPY --chown=apexuser:apexuser --from=tarball /extracted $POLICY_HOME +RUN cp -pr $POLICY_HOME/examples /home/apexuser USER apexuser ENV PATH $POLICY_HOME/bin:$PATH diff --git a/packages/apex-pdp-docker/src/main/docker/suse.Dockerfile b/packages/apex-pdp-docker/src/main/docker/suse.Dockerfile index 653760cd6..d947a3cc7 100644 --- a/packages/apex-pdp-docker/src/main/docker/suse.Dockerfile +++ b/packages/apex-pdp-docker/src/main/docker/suse.Dockerfile @@ -18,12 +18,22 @@ # ============LICENSE_END========================================================= #------------------------------------------------------------------------------- -# -# Docker file to build an image that runs APEX on Java 11 or better in OpenSuse -# -FROM opensuse/leap:15.3 +FROM busybox AS tarball +RUN mkdir /packages /extracted +COPY /maven/apex-pdp-package-full.tar.gz /packages/ +RUN tar xvzf /packages/apex-pdp-package-full.tar.gz --directory /extracted/ + +FROM opensuse/leap:15.4 LABEL maintainer="Policy Team" +LABEL org.opencontainers.image.title="Policy APEX PDP" +LABEL org.opencontainers.image.description="Policy APEX PDP image based on OpenSuse" +LABEL org.opencontainers.image.url="https://github.com/onap/policy-apex-pdp" +LABEL org.opencontainers.image.vendor="ONAP Policy Team" +LABEL org.opencontainers.image.licenses="Apache-2.0" +LABEL org.opencontainers.image.created="${git.build.time}" +LABEL org.opencontainers.image.version="${git.build.version}" +LABEL org.opencontainers.image.revision="${git.commit.id.abbrev}" ARG POLICY_LOGS=/var/log/onap/policy/apex-pdp ENV POLICY_HOME=/opt/app/policy/apex-pdp @@ -31,23 +41,14 @@ ENV POLICY_LOGS=$POLICY_LOGS ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 ENV JAVA_HOME=/usr/lib64/jvm/java-11-openjdk-11 -RUN zypper -n -q install --no-recommends gzip java-11-openjdk-devel netcat-openbsd tar \ +RUN zypper -n -q install --no-recommends java-11-openjdk-devel netcat-openbsd \ && zypper -n -q update && zypper -n -q clean --all \ && groupadd --system apexuser && useradd --system --shell /bin/sh -G apexuser apexuser \ - && mkdir -p $POLICY_HOME \ - && mkdir -p $POLICY_LOGS \ - && chown -R apexuser:apexuser $POLICY_HOME $POLICY_LOGS \ - && mkdir /packages + && mkdir -p $POLICY_HOME $POLICY_LOGS \ + && chown -R apexuser:apexuser $POLICY_HOME $POLICY_LOGS -COPY /maven/apex-pdp-package-full.tar.gz /packages -RUN tar xvfz /packages/apex-pdp-package-full.tar.gz --directory $POLICY_HOME \ - && rm /packages/apex-pdp-package-full.tar.gz \ - && find /opt/app -type d -perm 755 \ - && find /opt/app -type f -perm 644 \ - && chmod 755 $POLICY_HOME/bin/* \ - && cp -pr $POLICY_HOME/examples /home/apexuser \ - && chown -R apexuser:apexuser /home/apexuser/* $POLICY_HOME \ - && chmod 755 $POLICY_HOME/etc/* +COPY --chown=apexuser:apexuser --from=tarball /extracted $POLICY_HOME +RUN cp -pr $POLICY_HOME/examples /home/apexuser USER apexuser ENV PATH $POLICY_HOME/bin:$PATH |