You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 3
Next »
Prerequisites
- The JobScheduler Master requires a database to be available.
Build
Dockerfile
Download: Dockerfile
FROM openjdk:8
LABEL maintainer="Software- und Organisations-Service GmbH"
# default user id has to match later run-time user
ARG USER_ID=$UID
# provide build arguments for release information
ARG JS_MAJOR=1.13
ARG JS_RELEASE=1.13.3-SNAPSHOT
# add installer archive file
COPY jobscheduler_linux-x64.${JS_RELEASE}.tar.gz /usr/local/src/
RUN test -e /usr/local/src/jobscheduler_linux-x64.${JS_RELEASE}.tar.gz && \
tar zxvf /usr/local/src/jobscheduler_linux-x64.${JS_RELEASE}.tar.gz -C /usr/local/src/ && \
rm -f /usr/local/src/jobscheduler_linux-x64.${JS_RELEASE}.tar.gz && \
ln -s /usr/local/src/jobscheduler.${JS_RELEASE} /usr/local/src/jobscheduler
# for JDK < 12, /dev/random does not provide sufficient entropy, see https://kb.sos-berlin.com/x/lIM3
RUN rm /dev/random && ln -s /dev/urandom /dev/random
# copy installer response file and run installer
COPY jobscheduler_install.xml /usr/local/src/jobscheduler/jobscheduler_install.xml
RUN /usr/local/src/jobscheduler/setup.sh -u /usr/local/src/jobscheduler/jobscheduler_install.xml
# make default user the owner of directories
RUN groupadd --gid ${USER_ID:-1000} jobscheduler && \
useradd --uid ${USER_ID:-1000} --gid jobscheduler --home-dir /home/jobscheduler --no-create-home --shell /bin/bash jobscheduler && \
chown -R jobscheduler:jobscheduler /var/sos-berlin.com
# copy and prepare start script
COPY start_jobscheduler.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/start_jobscheduler.sh
# create volumes for data persistence
VOLUME /var/sos-berlin.com/jobscheduler/testsuite/config/live
# allow incoming traffic to port
EXPOSE 40444
# run-time user, can be overwritten when running the container
USER jobscheduler
CMD ["/usr/local/bin/start_jobscheduler.sh"]
- xx
Installer Response File