Loading docker/Dockerfile.soda 0 → 100644 +53 −0 Original line number Diff line number Diff line FROM debian:bullseye-slim WORKDIR /root ENV HOME /root RUN apt-get -y update \ && apt-get -y --no-install-recommends install libcfitsio9 \ unzip openjdk-17-jre-headless tomcat9 libtcnative-1 ca-certificates ENV CATALINA_BASE=/var/lib/tomcat9 ENV CATALINA_HOME=/usr/share/tomcat9 RUN rm -rf $CATALINA_BASE/webapps/examples/ \ $CATALINA_BASE/webapps/docs/ \ $CATALINA_BASE/webapps/host-manager ENV WEBAPP_DIR=/webapps/vlkb-soda COPY deps/ast_9.2.9-1_amd64.deb ./ RUN dpkg -i /root/ast_9.2.9-1_amd64.deb && ldconfig \ && mkdir -p ${WEBAPP_DIR} \ && mkdir -p /srv/surveys \ && mkdir -p /srv/cutouts \ && mkdir -p /etc/pki/tls ARG VLKB_VERSION COPY vlkb-${VLKB_VERSION}.deb ./ COPY vlkb-soda-${VLKB_VERSION}.war ${WEBAPP_DIR}/ RUN dpkg -i vlkb-${VLKB_VERSION}.deb \ && cd ${WEBAPP_DIR} && unzip vlkb-soda-${VLKB_VERSION}.war \ && apt-get autoremove && apt-get clean # configure build instance ENV INST_DIR=/usr/local RUN echo "${INST_DIR}/lib" > /etc/ld.so.conf.d/ast.conf && ldconfig # change webapps-dir and preconfigure port 8080 (no SSL) COPY deps/server.xml deps/server-connector.xml /etc/tomcat9/ # configure at start-up COPY entrypoint.sh.soda /root/entrypoint.sh # run RUN pwd && chmod +x /root/entrypoint.sh CMD ["sh", "-c", "/root/entrypoint.sh"] docker/Dockerfile.soda.temurin-jammy 0 → 100644 +61 −0 Original line number Diff line number Diff line #FROM debian:bullseye-slim #LABEL description="vlkb tomcat9" FROM tomcat:9-jre17-temurin-jammy #ENV JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 #ENV CATALINA_BASE=/var/lib/tomcat9 #ENV CATALINA_HOME=/usr/share/tomcat9 #ENV CATALINA_TMPDIR=/tmp WORKDIR /root ENV HOME /root RUN apt-get -y update \ && apt-get -y install apt-utils \ && apt-get -y install libcfitsio-bin libcsv3 time unzip # Remove the default webapps: RUN rm -rf /usr/local/tomcat/webapps/examples/ \ /usr/local/tomcat/webapps/docs/ \ /usr/local/tomcat/webapps/host-manager ENV WEBAPP_DIR=/webapps/vlkb-soda COPY deps/ast_9.2.9-1_amd64.deb ./ RUN dpkg -i /root/ast_9.2.9-1_amd64.deb && ldconfig \ && mkdir -p ${WEBAPP_DIR} \ && mkdir -p /srv/surveys && mkdir -p /srv/cutouts \ && mkdir -p /etc/pki/tls ARG VLKB_VERSION COPY vlkb-${VLKB_VERSION}.deb ./ COPY vlkb-soda-${VLKB_VERSION}.war ${WEBAPP_DIR}/ RUN dpkg -i vlkb-${VLKB_VERSION}.deb \ && cd ${WEBAPP_DIR} && unzip vlkb-soda-${VLKB_VERSION}.war # configure instance ENV INST_DIR=/usr/local RUN echo "${INST_DIR}/lib" > /etc/ld.so.conf.d/ast.conf && ldconfig # configure during docker build-time # precofigure port 8080 (no SSL) COPY deps/server.xml deps/server-connector.xml /usr/local/tomcat/conf/ #COPY deps/server.xml deps/server-connector.xml /etc/tomcat9/ # configure during docker run-time COPY entrypoint.sh.soda /root/entrypoint.sh # run RUN pwd && chmod +x /root/entrypoint.sh CMD ["sh", "-c", "/root/entrypoint.sh"] docker/entrypoint.sh.soda +7 −30 Original line number Diff line number Diff line #!/bin/bash set +e LOG_FILE=/tmp/entrypoint.log { date whoami env ######################################################################### echo "SECURITY : "$SECURITY echo "ACCESS_CONTEXT_ROOT : "$ACCESS_CONTEXT_ROOT echo "RESPONSE_FORMAT : "$RESPONSE_FORMAT echo "URL_CUTOUTS : "$URL_CUTOUTS echo "build-time config'd (Dockefile):" echo "INST_DIR : "$INST_DIR echo "WEBAPP_DIR : "$WEBAPP_DIR echo "JAVA_HOME : "$JAVA_HOME echo "CATALINA_BASE : "$CATALINA_BASE echo "CATALINA_HOME : "$CATALINA_HOME echo "CATALINA_TMPDIR : "$CATALINA_TMPDIR ######################################################################### ## configure VLKB access ## configure SODA mkdir -p $CATALINA_BASE/conf/Catalina/localhost cp $WEBAPP_DIR/META-INF/context.xml $CATALINA_BASE/conf/Catalina/localhost/$ACCESS_CONTEXT_ROOT.xml echo "fits_path_surveys=/srv/surveys" > $WEBAPP_DIR/WEB-INF/classes/cutout.properties Loading Loading @@ -55,18 +38,17 @@ echo "fits_path_surveys=/srv/surveys" > $WEBAPP_DIR/WEB-INF/classes/cutout.prope } >> $WEBAPP_DIR/WEB-INF/classes/cutout.properties #### Security ## Security case $SECURITY in iamtoken) cd $WEBAPP_DIR/WEB-INF/ && rm -f web.xml && cp web-cutout-$SECURITY.xml web.xml && cd - cp /etc/pki/tls/server-connector.xml /etc/tomcat9/ cp /etc/pki/tls/server-connector.xml $CATALINA_BASE/conf cp /etc/pki/tls/iamtoken.properties $WEBAPP_DIR/WEB-INF/classes/ rm -f $WEBAPP_DIR/WEB-INF/lib/jjwt-*0.11*.jar ;; tsl) cp /etc/pki/tls/server-connector.xml /etc/tomcat9/ cp /etc/pki/tls/server-connector.xml $CATALINA_BASE/conf rm -f $WEBAPP_DIR/WEB-INF/lib/jjwt-*.jar ;; *) Loading @@ -74,13 +56,8 @@ case $SECURITY in ;; esac ######################################################################### date } 1> /tmp/entrypoint.log 2>&1 } 1> $LOG_FILE 2>&1 /usr/libexec/tomcat9/tomcat-start.sh & wait -n $CATALINA_HOME/bin/catalina.sh run Loading
docker/Dockerfile.soda 0 → 100644 +53 −0 Original line number Diff line number Diff line FROM debian:bullseye-slim WORKDIR /root ENV HOME /root RUN apt-get -y update \ && apt-get -y --no-install-recommends install libcfitsio9 \ unzip openjdk-17-jre-headless tomcat9 libtcnative-1 ca-certificates ENV CATALINA_BASE=/var/lib/tomcat9 ENV CATALINA_HOME=/usr/share/tomcat9 RUN rm -rf $CATALINA_BASE/webapps/examples/ \ $CATALINA_BASE/webapps/docs/ \ $CATALINA_BASE/webapps/host-manager ENV WEBAPP_DIR=/webapps/vlkb-soda COPY deps/ast_9.2.9-1_amd64.deb ./ RUN dpkg -i /root/ast_9.2.9-1_amd64.deb && ldconfig \ && mkdir -p ${WEBAPP_DIR} \ && mkdir -p /srv/surveys \ && mkdir -p /srv/cutouts \ && mkdir -p /etc/pki/tls ARG VLKB_VERSION COPY vlkb-${VLKB_VERSION}.deb ./ COPY vlkb-soda-${VLKB_VERSION}.war ${WEBAPP_DIR}/ RUN dpkg -i vlkb-${VLKB_VERSION}.deb \ && cd ${WEBAPP_DIR} && unzip vlkb-soda-${VLKB_VERSION}.war \ && apt-get autoremove && apt-get clean # configure build instance ENV INST_DIR=/usr/local RUN echo "${INST_DIR}/lib" > /etc/ld.so.conf.d/ast.conf && ldconfig # change webapps-dir and preconfigure port 8080 (no SSL) COPY deps/server.xml deps/server-connector.xml /etc/tomcat9/ # configure at start-up COPY entrypoint.sh.soda /root/entrypoint.sh # run RUN pwd && chmod +x /root/entrypoint.sh CMD ["sh", "-c", "/root/entrypoint.sh"]
docker/Dockerfile.soda.temurin-jammy 0 → 100644 +61 −0 Original line number Diff line number Diff line #FROM debian:bullseye-slim #LABEL description="vlkb tomcat9" FROM tomcat:9-jre17-temurin-jammy #ENV JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 #ENV CATALINA_BASE=/var/lib/tomcat9 #ENV CATALINA_HOME=/usr/share/tomcat9 #ENV CATALINA_TMPDIR=/tmp WORKDIR /root ENV HOME /root RUN apt-get -y update \ && apt-get -y install apt-utils \ && apt-get -y install libcfitsio-bin libcsv3 time unzip # Remove the default webapps: RUN rm -rf /usr/local/tomcat/webapps/examples/ \ /usr/local/tomcat/webapps/docs/ \ /usr/local/tomcat/webapps/host-manager ENV WEBAPP_DIR=/webapps/vlkb-soda COPY deps/ast_9.2.9-1_amd64.deb ./ RUN dpkg -i /root/ast_9.2.9-1_amd64.deb && ldconfig \ && mkdir -p ${WEBAPP_DIR} \ && mkdir -p /srv/surveys && mkdir -p /srv/cutouts \ && mkdir -p /etc/pki/tls ARG VLKB_VERSION COPY vlkb-${VLKB_VERSION}.deb ./ COPY vlkb-soda-${VLKB_VERSION}.war ${WEBAPP_DIR}/ RUN dpkg -i vlkb-${VLKB_VERSION}.deb \ && cd ${WEBAPP_DIR} && unzip vlkb-soda-${VLKB_VERSION}.war # configure instance ENV INST_DIR=/usr/local RUN echo "${INST_DIR}/lib" > /etc/ld.so.conf.d/ast.conf && ldconfig # configure during docker build-time # precofigure port 8080 (no SSL) COPY deps/server.xml deps/server-connector.xml /usr/local/tomcat/conf/ #COPY deps/server.xml deps/server-connector.xml /etc/tomcat9/ # configure during docker run-time COPY entrypoint.sh.soda /root/entrypoint.sh # run RUN pwd && chmod +x /root/entrypoint.sh CMD ["sh", "-c", "/root/entrypoint.sh"]
docker/entrypoint.sh.soda +7 −30 Original line number Diff line number Diff line #!/bin/bash set +e LOG_FILE=/tmp/entrypoint.log { date whoami env ######################################################################### echo "SECURITY : "$SECURITY echo "ACCESS_CONTEXT_ROOT : "$ACCESS_CONTEXT_ROOT echo "RESPONSE_FORMAT : "$RESPONSE_FORMAT echo "URL_CUTOUTS : "$URL_CUTOUTS echo "build-time config'd (Dockefile):" echo "INST_DIR : "$INST_DIR echo "WEBAPP_DIR : "$WEBAPP_DIR echo "JAVA_HOME : "$JAVA_HOME echo "CATALINA_BASE : "$CATALINA_BASE echo "CATALINA_HOME : "$CATALINA_HOME echo "CATALINA_TMPDIR : "$CATALINA_TMPDIR ######################################################################### ## configure VLKB access ## configure SODA mkdir -p $CATALINA_BASE/conf/Catalina/localhost cp $WEBAPP_DIR/META-INF/context.xml $CATALINA_BASE/conf/Catalina/localhost/$ACCESS_CONTEXT_ROOT.xml echo "fits_path_surveys=/srv/surveys" > $WEBAPP_DIR/WEB-INF/classes/cutout.properties Loading Loading @@ -55,18 +38,17 @@ echo "fits_path_surveys=/srv/surveys" > $WEBAPP_DIR/WEB-INF/classes/cutout.prope } >> $WEBAPP_DIR/WEB-INF/classes/cutout.properties #### Security ## Security case $SECURITY in iamtoken) cd $WEBAPP_DIR/WEB-INF/ && rm -f web.xml && cp web-cutout-$SECURITY.xml web.xml && cd - cp /etc/pki/tls/server-connector.xml /etc/tomcat9/ cp /etc/pki/tls/server-connector.xml $CATALINA_BASE/conf cp /etc/pki/tls/iamtoken.properties $WEBAPP_DIR/WEB-INF/classes/ rm -f $WEBAPP_DIR/WEB-INF/lib/jjwt-*0.11*.jar ;; tsl) cp /etc/pki/tls/server-connector.xml /etc/tomcat9/ cp /etc/pki/tls/server-connector.xml $CATALINA_BASE/conf rm -f $WEBAPP_DIR/WEB-INF/lib/jjwt-*.jar ;; *) Loading @@ -74,13 +56,8 @@ case $SECURITY in ;; esac ######################################################################### date } 1> /tmp/entrypoint.log 2>&1 } 1> $LOG_FILE 2>&1 /usr/libexec/tomcat9/tomcat-start.sh & wait -n $CATALINA_HOME/bin/catalina.sh run