docker-minecraft-server/minecraft-server/Dockerfile

78 lines
2.7 KiB
Docker
Raw Normal View History

2018-07-05 22:11:51 +00:00
FROM openjdk:8u171-jre-alpine
2017-05-02 19:29:17 +00:00
LABEL maintainer "itzg"
2014-06-02 02:38:32 +00:00
2018-07-28 15:33:24 +00:00
RUN apk add --no-cache -U \
2016-12-06 22:31:06 +00:00
openssl \
imagemagick \
lsof \
su-exec \
shadow \
2016-12-06 22:31:06 +00:00
bash \
curl iputils wget \
2016-12-06 22:31:06 +00:00
git \
jq \
mysql-client \
tzdata \
rsync \
2018-07-28 15:33:24 +00:00
python python-dev py2-pip
2016-12-06 22:31:06 +00:00
RUN pip install mcstatus
2018-07-05 00:57:18 +00:00
HEALTHCHECK CMD mcstatus localhost:$SERVER_PORT ping
2016-12-06 22:31:06 +00:00
RUN addgroup -g 1000 minecraft \
&& adduser -Ss /bin/false -u 1000 -G minecraft -h /home/minecraft minecraft \
&& mkdir -m 777 /data /mods /config /plugins \
&& chown minecraft:minecraft /data /config /mods /plugins /home/minecraft
2014-06-02 02:38:32 +00:00
EXPOSE 25565 25575
2014-06-02 02:38:32 +00:00
ARG RESTIFY_VER=1.1.4
ARG RCON_CLI_VER=1.4.0
ARG MC_SERVER_RUNNER_VER=1.2.0
ARG TOF_BUILDTOOLS_VER=1.2.0
ARG ARCH=amd64
ADD https://github.com/itzg/restify/releases/download/${RESTIFY_VER}/restify_${RESTIFY_VER}_linux_${ARCH}.tar.gz /tmp/restify.tgz
RUN tar -x -C /usr/local/bin -f /tmp/restify.tgz restify && \
rm /tmp/restify.tgz
ADD https://github.com/itzg/rcon-cli/releases/download/${RCON_CLI_VER}/rcon-cli_${RCON_CLI_VER}_linux_${ARCH}.tar.gz /tmp/rcon-cli.tgz
RUN tar -x -C /usr/local/bin -f /tmp/rcon-cli.tgz rcon-cli && \
rm /tmp/rcon-cli.tgz
ADD https://github.com/itzg/mc-server-runner/releases/download/${MC_SERVER_RUNNER_VER}/mc-server-runner_${MC_SERVER_RUNNER_VER}_linux_${ARCH}.tar.gz /tmp/mc-server-runner.tgz
RUN tar -x -C /usr/local/bin -f /tmp/mc-server-runner.tgz mc-server-runner && \
rm /tmp/mc-server-runner.tgz
ADD https://git.faldoria.de/tof/server/build-tools/-/jobs/artifacts/buildtools-${TOF_BUILDTOOLS_VER}/raw/target/ToF-BuildTools.jar?job=release-artifact /tmp/tof-buildtools/BuildTools.jar
ONBUILD ARG BUILDTOOLS_OUTPUT=/plugins
ONBUILD COPY Dockerfile *plugins.yml /tmp/tof-buildtools/
ONBUILD RUN java -jar /tmp/tof-buildtools/BuildTools.jar \
--config "/tmp/tof-buildtools/plugins.yml" \
--configs "plugins.yml" \
--dir "/tmp/tof-buildtools/" \
--output ${BUILDTOOLS_OUTPUT} && \
chown -R minecraft:minecraft ${BUILDTOOLS_OUTPUT} && \
rm -fR /tmp/tof-buildtools/
COPY mcadmin.jq /usr/share
RUN chmod +x /usr/local/bin/*
2014-06-02 02:38:32 +00:00
VOLUME ["/data","/mods","/config"]
COPY server.properties /tmp/server.properties
2014-06-02 02:38:32 +00:00
WORKDIR /data
ENTRYPOINT [ "/start" ]
2014-06-02 02:38:32 +00:00
ENV UID=1000 GID=1000 \
JVM_XX_OPTS="-XX:+UseG1GC" MEMORY="1G" \
TYPE=VANILLA VERSION=LATEST FORGEVERSION=RECOMMENDED SPONGEBRANCH=STABLE SPONGEVERSION= LEVEL=world \
PVP=true DIFFICULTY=easy ENABLE_RCON=true RCON_PORT=25575 RCON_PASSWORD=minecraft \
LEVEL_TYPE=DEFAULT GENERATOR_SETTINGS= WORLD= MODPACK= MODS= SERVER_PORT=25565 ONLINE_MODE=TRUE CONSOLE=true
COPY start* /
RUN dos2unix /start* && chmod +x /start*