diff options
Diffstat (limited to 'deliveries/Dockerfile.be')
-rw-r--r-- | deliveries/Dockerfile.be | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/deliveries/Dockerfile.be b/deliveries/Dockerfile.be new file mode 100644 index 00000000..afc39816 --- /dev/null +++ b/deliveries/Dockerfile.be @@ -0,0 +1,54 @@ +# Dockerfile for image with ONAP Portal +ARG BE_BASE_IMAGE=tomcat:8.5.35-jre8-alpine +FROM ${BE_BASE_IMAGE} + +RUN apk add sudo && echo "portal ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers +# Arguments are supplied by build.sh script +# the defaults below only support testing +ARG PORTAL_WAR=build/ecompportal-be-os.war +ARG HTTP_PROXY +ARG HTTPS_PROXY +# ARG PORTAL_CERT=truststoreONAPall.jks + +# Just variables, never passed in +ARG PORTALCONTEXT=ONAPPORTAL + +ARG TOMCAT=/usr/local/tomcat +ARG TOMCATHOME=${TOMCAT} +ARG SERVERXML=${SERVERXML} + +ENV http_proxy $HTTP_PROXY +ENV https_proxy $HTTPS_PROXY + +RUN if [ -d /etc/apt ] && [ ! -z ${HTTP_PROXY} ]; then echo "Acquire::http::proxy \"${HTTP_PROXY}\";" >> /etc/apt/apt.conf; fi && \ + if [ -d /etc/apt ] && [ ! -z ${HTTPS_PROXY} ]; then echo "Acquire::https::proxy \"${HTTPS_PROXY}\";" >> /etc/apt/apt.conf; fi + +# Remove manager and sample apps +RUN rm -rf ${TOMCAT}/webapps/[a-z]* +RUN mkdir -p /opt +COPY ${SERVERXML} ${TOMCAT}/conf +# TODO: ???? +#RUN mv ${TOMCAT} /opt + +WORKDIR ${TOMCATHOME}/webapps +RUN mkdir ${PORTALCONTEXT} + +# Portal has many parts +COPY $PORTAL_WAR ${PORTALCONTEXT} +RUN cd ${PORTALCONTEXT} && unzip -q *.war && rm *.war + +VOLUME ${TOMCATHOME}/logs + +RUN addgroup -g 1000 -S portal && adduser -u 1000 -S portal -G portal && chown -R portal:portal . && chmod -R 777 /etc/ssl/certs/java /var/ + +# Switch back to root +WORKDIR / + +# Define commonly used ENV variables +ENV PATH $PATH:$JAVA_HOME/bin:${TOMCATHOME}/bin +# Install the launch script +COPY start-apache-tomcat.sh / + +# Define default command +ENV TOMCATHOME=$TOMCATHOME +CMD /start-apache-tomcat.sh -b $TOMCATHOME |