X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=packages%2Fpolicy-xacmlpdp-docker%2Fsrc%2Fmain%2Fdocker%2FDockerfile;h=90627b16adad285054dc15024a6e6491b2bbe883;hb=refs%2Fchanges%2F81%2F137781%2F1;hp=b5f8af30a4c4135002df16fcb8931d8aab45dc7f;hpb=ab1824d122b50d29e000bb58521d8dace9cba2b6;p=policy%2Fxacml-pdp.git diff --git a/packages/policy-xacmlpdp-docker/src/main/docker/Dockerfile b/packages/policy-xacmlpdp-docker/src/main/docker/Dockerfile index b5f8af30..90627b16 100644 --- a/packages/policy-xacmlpdp-docker/src/main/docker/Dockerfile +++ b/packages/policy-xacmlpdp-docker/src/main/docker/Dockerfile @@ -1,46 +1,61 @@ -FROM ubuntu:16.04 +#------------------------------------------------------------------------------- +# Dockerfile +# ============LICENSE_START======================================================= +# Copyright (C) 2020-2021 AT&T Intellectual Property. 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-xacmlpdp.tar.gz /packages/ +RUN tar xvzf /packages/policy-xacmlpdp.tar.gz --directory /extracted/ + +FROM onap/policy-jre-alpine:3.1.3-SNAPSHOT + +LABEL maintainer="Policy Team" +LABEL org.opencontainers.image.title="Policy XACML PDP" +LABEL org.opencontainers.image.description="Policy XACML PDP image based on Alpine" +LABEL org.opencontainers.image.url="https://github.com/onap/policy-xacml-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 HTTP_PROXY=${HTTP_PROXY} -ARG HTTPS_PROXY=${HTTPS_PROXY} -ARG BUILD_VERSION=${BUILD_VERSION} ARG POLICY_LOGS=/var/log/onap/policy/pdpx -ENV http_proxy $HTTP_PROXY -ENV https_proxy $HTTPS_PROXY -ENV BUILD_VERSION ${BUILD_VERSION} -ENV POLICY_LOGS ${POLICY_LOGS} - -ENV POLICY_HOME=/opt/app/policy -ENV POLICY_PDPX_HOME=${POLICY_HOME}/pdpx - -RUN \ - apt-get clean && \ - apt-get update && \ - apt-get install -y zip unzip curl wget ssh telnet maven && \ - apt-get install -y software-properties-common && \ - apt-get install -y jq httpie && \ - apt-get install -y python-pip && \ - add-apt-repository ppa:openjdk-r/ppa && \ - apt-get clean && \ - apt-get update && \ - apt-get install -y openjdk-8-jdk - -RUN groupadd policy -RUN useradd --create-home --shell /bin/bash -g policy policy - -RUN mkdir -p ${POLICY_PDPX_HOME} ${POLICY_LOGS} ${POLICY_HOME}/etc/ssl ${POLICY_PDPX_HOME}/bin && \ - chown -R policy:policy ${POLICY_HOME} ${POLICY_PDPX_HOME} ${POLICY_LOGS} - -RUN mkdir /packages -COPY /maven/* /packages -RUN tar xvfz /packages/policy-xacml-pdp.tar.gz --directory ${POLICY_PDPX_HOME} -RUN rm /packages/policy-xacml-pdp.tar.gz - -WORKDIR ${POLICY_PDPX_HOME} -COPY policy-pdpx.sh bin/. -RUN chown -R policy:policy * && chmod +x bin/*.sh -RUN cp ${POLICY_PDPX_HOME}/etc/ssl/* ${POLICY_HOME}/etc/ssl && chown policy:policy ${POLICY_HOME}/etc/ssl/* +ENV POLICY_LOGS=$POLICY_LOGS + +ENV POLICY_HOME=$POLICY_HOME/pdpx +USER root +RUN apk update && \ + apk add mariadb-client && \ + apk add postgresql-client && \ + mkdir -p $POLICY_HOME $POLICY_LOGS && \ + chown -R policy:policy $POLICY_HOME $POLICY_LOGS + +COPY --chown=policy:policy --from=tarball /extracted $POLICY_HOME + +WORKDIR $POLICY_HOME +COPY --chown=policy:policy policy-pdpx.sh bin/ +COPY --chown=policy:policy policy-pdpx-pg.sh bin/ +RUN chmod 755 bin/*.sh USER policy -WORKDIR ${POLICY_PDPX_HOME}/bin -ENTRYPOINT [ "bash", "./policy-pdpx.sh" ] +WORKDIR $POLICY_HOME/bin +ENTRYPOINT [ "./policy-pdpx.sh" ]