Select Git revision
-
Robert Butora authoredRobert Butora authored
Dockerfile 2.07 KiB
FROM debian:bullseye-slim
LABEL Description="vlkb tomcat9"
WORKDIR /root
ENV HOME /root
RUN apt -y update \
&& apt -y install sudo procps psmisc tree wget curl vim make build-essential checkinstall git \
libcfitsio-dev libpqxx-dev librabbitmq-dev libcsv-dev gfortran \
openjdk-17-jre-headless unzip \
rabbitmq-server openjdk-17-jre openjdk-17-jdk tomcat9 tomcat9-admin \
postgresql-client
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
ENV WEBAPP_DIR=/webapps/vlkb-cutout
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 vlkb-obscore-${VLKB_VERSION}.deb vlkbd-${VLKB_VERSION}.deb ./
COPY vlkb-cutout-${VLKB_VERSION}.war ${WEBAPP_DIR}/
RUN dpkg -i vlkb-${VLKB_VERSION}.deb vlkb-obscore-${VLKB_VERSION}.deb vlkbd-${VLKB_VERSION}.deb \
&& cd ${WEBAPP_DIR} && jar -xf vlkb-cutout-${VLKB_VERSION}.war
# Tomcat must load DB-driver (postgresql_*.jar), vlkb-cutout does not explicitely load DB-drivers
COPY deps/postgresql-*.jar /var/lib/tomcat9/lib
# configure instance
ENV INST_DIR=/usr/local
COPY deps/vlkbd_exec.sh ${INST_DIR}/bin
RUN mkdir -p ${INST_DIR}/etc/vlkb-obscore \
&& mkdir -p ${INST_DIR}/etc/vlkbd \
&& echo "${INST_DIR}/lib" > /etc/ld.so.conf.d/ast.conf \
&& ldconfig
# configure during docker build-time
COPY deps/vlkb-obscore.datasets.conf ${INST_DIR}/etc/vlkb-obscore/datasets.conf
COPY deps/vlkbd.datasets.conf ${INST_DIR}/etc/vlkbd/datasets.conf
# precofigure port 8080 (no SSL)
COPY deps/server.xml deps/server-connector.xml /etc/tomcat9/
# configure during docker run-time
COPY entrypoint.sh /root
RUN echo "alias log-catalina='ls -t /var/log/tomcat9/catalina*.log | head -n 1 | xargs tail -200 '" >> /root/.bashrc$
# run
RUN pwd && chmod +x /root/entrypoint.sh
CMD ["sh", "-c", "/root/entrypoint.sh"]