Files
tomcat/Dockerfile

57 lines
2.8 KiB
Docker

# Rx3-Docker/Tomcat Dockerfile
#-------------------------------------------------------------------------------
ARG IMG_FROM_URL="rx3-docker/java:latest"
FROM ${IMG_FROM_URL}
ARG IMG_NAME
ARG IMG_NAME_FULL
ARG IMG_VERSION
ARG IMG_MAINTAINER
LABEL org.rx3.${IMG_NAME}.name=${IMG_NAME_FULL}
LABEL org.rx3.${IMG_NAME}.version=${IMG_VERSION}
LABEL org.rx3.${IMG_NAME}.maintainer=${IMG_MAINTAINER}
LABEL maintainer=${IMG_MAINTAINER}
ARG TOMCAT_CONFIG_DIR=/etc/tomcat
ARG TOMCAT_CONFIG_FILE=${TOMCAT_CONFIG_DIR}/tomcat.conf
ARG TOMCAT_CACHE_DIR=/var/cache/tomcat
ARG TOMCAT_LIB_DIR=/var/lib/tomcat
ARG TOMCAT_LOG_DIR=/var/log/tomcat
ARG TOMCAT_SHARE_DIR=/usr/share/tomcat
ARG TOMCAT_WORK_DIR=${TOMCAT_CACHE_DIR}/work
ARG TOMCAT_PORT=8080
#----------------------------------------------------------------------------------------------------------------
ARG TOMCATD='#!/bin/bash \n\
\n\
usermod -u ${TOMCAT_UID} tomcat \n\
groupmod -g ${TOMCAT_GID} tomcat \n\
\n\
chown -R root:tomcat '${TOMCAT_CONFIG_DIR}' '${TOMCAT_CACHE_DIR}' '${TOMCAT_LIB_DIR}' '${TOMCAT_SHARE_DIR}' \n\
chown -R tomcat:tomcat '${TOMCAT_LOG_DIR}' '${TOMCAT_WORK_DIR}
#----------------------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------------------
ARG TOMCATD_INI='[program:tomcatd] \n\
command=bash -c "source '${TOMCAT_CONFIG_FILE}' && /usr/libexec/tomcat/server start" \n\
user=tomcat'
#----------------------------------------------------------------------------------------------------------------
RUN urpmi.update -a \
&& urpmi --force tomcat \
&& echo -e "${TOMCATD}" | sed -e "s/\`/'/g" -e 's/ *$//' > /etc/init.d/tomcatd \
&& chmod a+x /etc/init.d/tomcatd \
&& ln -s /etc/init.d/tomcatd /etc/rcD.d/S40tomcatd \
&& echo -e "${TOMCATD_INI}" | sed -e "s/\`/'/g" -e 's/ *$//' > /etc/supervisord.d/tomcatd.ini
EXPOSE ${TOMCAT_PORT}