mirror of
https://github.com/Febbweiss/docker-xwiki-jetty.git
synced 2026-03-05 06:45:36 +00:00
Optimization :
* using alpine linux as base * xwiki version as building arguments instead of hardcoded * add libreoffice and its xwiki configuration to import Office documents * set environment.permanentDirectory Fix: * SMTP environment variables set as empty string
This commit is contained in:
40
Dockerfile
40
Dockerfile
@@ -1,20 +1,38 @@
|
|||||||
FROM jetty:9.3.7-jre8
|
FROM frolvlad/alpine-oraclejdk8
|
||||||
|
|
||||||
|
ARG XWIKI_VERSION=8.0
|
||||||
|
ARG JETTY_MAJOR=stable-9
|
||||||
|
ARG JETTY_VERSION=9.3.8.v20160314
|
||||||
|
ENV JETTY_BASE /usr/local/jetty
|
||||||
|
|
||||||
ENV MYSQL_USER xwiki
|
ENV MYSQL_USER xwiki
|
||||||
ENV MYSQL_PASSWORD dbpass
|
ENV MYSQL_PASSWORD dbpass
|
||||||
ENV MYSQL_HOST db
|
ENV MYSQL_HOST db
|
||||||
ENV WIKI_CONTEXT xwiki
|
ENV WIKI_CONTEXT xwiki
|
||||||
ENV ADMIN_EMAIL xwiki@host.com
|
ENV ADMIN_EMAIL ''
|
||||||
ENV SMTP_HOST mail.host.com
|
ENV SMTP_HOST ''
|
||||||
ENV SMTP_PROTOCOL tls
|
ENV SMTP_PROTOCOL ''
|
||||||
ENV SMTP_LOGIN xwiki
|
ENV SMTP_LOGIN ''
|
||||||
ENV SMTP_PASSWORD xwiki
|
ENV SMTP_PASSWORD ''
|
||||||
|
|
||||||
RUN curl http://download.forge.ow2.org/xwiki/xwiki-enterprise-web-8.0-milestone-2.war --output ${JETTY_BASE}/xwiki8.war
|
RUN apk update && \
|
||||||
RUN curl http://download.forge.ow2.org/xwiki/xwiki-enterprise-ui-mainwiki-all-8.0-milestone-2.xar --output ${JETTY_BASE}/xwiki8.xar
|
apk add --no-cache libreoffice curl && \
|
||||||
RUN mkdir -p ${JETTY_BASE}/webapps/ROOT/
|
cd /usr/local && \
|
||||||
RUN unzip ${JETTY_BASE}/xwiki8.war -d ${JETTY_BASE}/webapps/ROOT/
|
curl -sSL "http://eclipse.org/downloads/download.php?file=/jetty/${JETTY_MAJOR}/dist/jetty-distribution-${JETTY_VERSION}.tar.gz&r=1" -o jetty.tar.gz && \
|
||||||
RUN curl http://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.38/mysql-connector-java-5.1.38.jar --output ${JETTY_BASE}/webapps/ROOT/WEB-INF/lib/mysql-connector-java-5.jar
|
tar -xzf jetty.tar.gz && \
|
||||||
|
ln -s jetty-distribution-${JETTY_VERSION} jetty && \
|
||||||
|
rm jetty.tar.gz
|
||||||
|
|
||||||
|
|
||||||
|
RUN curl -sL http://download.forge.ow2.org/xwiki/xwiki-enterprise-web-${XWIKI_VERSION}.war --output ${JETTY_BASE}/xwiki${XWIKI_VERSION}.war && \
|
||||||
|
curl -sL http://download.forge.ow2.org/xwiki/xwiki-enterprise-ui-mainwiki-all-${XWIKI_VERSION}.xar --output ${JETTY_BASE}/xwiki${XWIKI_VERSION}.xar && \
|
||||||
|
mkdir -p ${JETTY_BASE}/webapps/ROOT/ && \
|
||||||
|
unzip -q ${JETTY_BASE}/xwiki${XWIKI_VERSION}.war -d ${JETTY_BASE}/webapps/ROOT/ && \
|
||||||
|
rm ${JETTY_BASE}/xwiki${XWIKI_VERSION}.war && \
|
||||||
|
curl -sL http://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.38/mysql-connector-java-5.1.38.jar --output ${JETTY_BASE}/webapps/ROOT/WEB-INF/lib/mysql-connector-java-5.jar
|
||||||
|
|
||||||
|
|
||||||
|
RUN rm -rf /tmp/* /var/tmp/* /var/cache/apk/* /usr/share/doc/*
|
||||||
|
|
||||||
ADD ./start.sh /usr/local/bin/start.sh
|
ADD ./start.sh /usr/local/bin/start.sh
|
||||||
ADD ./config/hibernate.cfg.xml ${JETTY_BASE}/webapps/ROOT/WEB-INF/
|
ADD ./config/hibernate.cfg.xml ${JETTY_BASE}/webapps/ROOT/WEB-INF/
|
||||||
|
|||||||
15
start.sh
15
start.sh
@@ -1,4 +1,4 @@
|
|||||||
#!/bin/bash
|
#!/bin/sh
|
||||||
|
|
||||||
if [ "$WIKI_CONTEXT" != "" ];then
|
if [ "$WIKI_CONTEXT" != "" ];then
|
||||||
if [ ! -f "${JETTY_BASE}/webapps/${WIKI_CONTEXT}" ];then
|
if [ ! -f "${JETTY_BASE}/webapps/${WIKI_CONTEXT}" ];then
|
||||||
@@ -27,8 +27,17 @@ if [ "$WIKI_CONTEXT" != "" ];then
|
|||||||
else
|
else
|
||||||
sed -i "s|.*mail\.sender\.port = .*|mail.sender.port = 25|" ${JETTY_BASE}/webapps/${WIKI_CONTEXT}/WEB-INF/xwiki.properties
|
sed -i "s|.*mail\.sender\.port = .*|mail.sender.port = 25|" ${JETTY_BASE}/webapps/${WIKI_CONTEXT}/WEB-INF/xwiki.properties
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
set XWIKI_OPTS=%XWIKI_OPTS% -Doffice.path=/usr/lib/libreoffice/
|
||||||
|
|
||||||
|
sed -i "s|.*openoffice.serverType=0|openoffice.serverType=0|" ${JETTY_BASE}/webapps/${WIKI_CONTEXT}/WEB-INF/xwiki.properties
|
||||||
|
sed -i "s|.*openoffice.autoStart=false|openoffice.autoStart=true|" ${JETTY_BASE}/webapps/${WIKI_CONTEXT}/WEB-INF/xwiki.properties
|
||||||
|
sed -i "s|.*openoffice.homePath=/opt/openoffice.org3/|openoffice.homePath=/usr/lib/libreoffice/|" ${JETTY_BASE}/webapps/${WIKI_CONTEXT}/WEB-INF/xwiki.properties
|
||||||
|
sed -i "s|.*openoffice.taskExecutionTimeout=30000|openoffice.taskExecutionTimeout=120000|" ${JETTY_BASE}/webapps/${WIKI_CONTEXT}/WEB-INF/xwiki.properties
|
||||||
|
|
||||||
|
sed -i "s|.*environment.permanentDirectory=/var/local/xwiki/|environment.permanentDirectory=/var/local/xwiki/|" ${JETTY_BASE}/webapps/${WIKI_CONTEXT}/WEB-INF/xwiki.properties
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
java -jar "$JETTY_HOME/start.jar"
|
cd ${JETTY_BASE}
|
||||||
|
java -jar start.jar
|
||||||
|
|||||||
Reference in New Issue
Block a user