X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=packages%2Fpolicy-api-docker%2Fsrc%2Fmain%2Fdocker%2FDockerfile;h=cb1e84c25fb47c7884a92a9ac392febfcd70e3f0;hb=refs%2Fchanges%2F90%2F136790%2F1;hp=ab41996332ae68f0e950ab6b6c9ad5a47bf406ee;hpb=f46ea4332fd4924c89879214b2577564168d7b46;p=policy%2Fapi.git diff --git a/packages/policy-api-docker/src/main/docker/Dockerfile b/packages/policy-api-docker/src/main/docker/Dockerfile index ab419963..cb1e84c2 100644 --- a/packages/policy-api-docker/src/main/docker/Dockerfile +++ b/packages/policy-api-docker/src/main/docker/Dockerfile @@ -1,39 +1,60 @@ -FROM alpine:3.9 +#------------------------------------------------------------------------------- +# Dockerfile +# ============LICENSE_START======================================================= +# Copyright (C) 2020-2021 AT&T Intellectual Property. All rights reserved. +# Modifications Copyright (C) 2022 Bell Canada. All rights reserved. +# Modifications Copyright (C) 2022-2023 Nordix Foundation. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# ============LICENSE_END========================================================= +#------------------------------------------------------------------------------- + +FROM busybox AS tarball +RUN mkdir /packages /extracted +COPY /maven/lib/policy-api.tar.gz /packages/ +RUN tar xvzf /packages/policy-api.tar.gz --directory /extracted/ + +FROM onap/policy-jre-alpine:3.1.0 + +LABEL maintainer="Policy Team" +LABEL org.opencontainers.image.title="Policy API" +LABEL org.opencontainers.image.description="Policy API image based on Alpine" +LABEL org.opencontainers.image.url="https://github.com/onap/policy-api" +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 HTTP_PROXY=${HTTP_PROXY} -ARG HTTPS_PROXY=${HTTPS_PROXY} -ARG BUILD_VERSION=${BUILD_VERSION} ARG POLICY_LOGS=/var/log/onap/policy/api -ENV http_proxy $HTTP_PROXY -ENV https_proxy $HTTPS_PROXY -ENV BUILD_VERSION ${BUILD_VERSION} -ENV POLICY_LOGS ${POLICY_LOGS} +ENV POLICY_LOGS=$POLICY_LOGS +ENV POLICY_HOME=$POLICY_HOME/api -ENV POLICY_HOME=/opt/app/policy -ENV POLICY_API_HOME=${POLICY_HOME}/api +USER root +RUN mkdir -p $POLICY_HOME $POLICY_LOGS && \ + chown -R policy:policy $POLICY_HOME $POLICY_LOGS -RUN \ - apk add --no-cache --update busybox-extras bash zip unzip curl wget \ - openssh maven openjdk8 jq httpie py-pip +COPY --chown=policy:policy --from=tarball /extracted/ $POLICY_HOME/ -RUN addgroup -S policy && \ - adduser -S --shell /bin/bash -G policy policy +WORKDIR $POLICY_HOME +COPY --chown=policy:policy policy-api.sh bin/ +COPY --chown=policy:policy /maven/api.jar /app/ - -RUN mkdir -p ${POLICY_API_HOME} ${POLICY_LOGS} ${POLICY_HOME}/etc/ssl ${POLICY_API_HOME}/bin && \ - chown -R policy:policy ${POLICY_HOME} ${POLICY_API_HOME} ${POLICY_LOGS} - -RUN mkdir /packages -COPY /maven/* /packages -RUN tar xvfz /packages/policy-api.tar.gz --directory ${POLICY_API_HOME} && \ - rm /packages/policy-api.tar.gz - -WORKDIR ${POLICY_API_HOME} -COPY policy-api.sh bin/. -RUN chown -R policy:policy * && chmod +x bin/*.sh && \ - cp ${POLICY_API_HOME}/etc/ssl/* ${POLICY_HOME}/etc/ssl && chown policy:policy ${POLICY_HOME}/etc/ssl/* +RUN chmod 755 bin/*.sh USER policy -WORKDIR ${POLICY_API_HOME}/bin -ENTRYPOINT [ "bash", "./policy-api.sh" ] +WORKDIR $POLICY_HOME/bin +ENTRYPOINT [ "./policy-api.sh" ]