From 04b4a3e8ca16d98e26698d5069281ce17fbeed15 Mon Sep 17 00:00:00 2001 From: Geoff Bourne Date: Sat, 19 May 2018 17:48:20 -0500 Subject: [PATCH] Adding RaspberryPi compatible dockerfile for reference --- minecraft-server/Dockerfile | 7 +-- minecraft-server/Dockerfile-raspberrypi | 62 +++++++++++++++++++++++++ 2 files changed, 66 insertions(+), 3 deletions(-) create mode 100644 minecraft-server/Dockerfile-raspberrypi diff --git a/minecraft-server/Dockerfile b/minecraft-server/Dockerfile index be46f24e..55312e4c 100644 --- a/minecraft-server/Dockerfile +++ b/minecraft-server/Dockerfile @@ -29,16 +29,17 @@ EXPOSE 25565 25575 ARG RESTIFY_VER=1.1.4 ARG RCON_CLI_VER=1.4.0 ARG MC_SERVER_RUNNER_VER=1.1.2 +ARG ARCH=amd64 -ADD https://github.com/itzg/restify/releases/download/${RESTIFY_VER}/restify_${RESTIFY_VER}_linux_amd64.tar.gz /tmp/restify.tgz +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_amd64.tar.gz /tmp/rcon-cli.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_amd64.tar.gz /tmp/mc-server-runner.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 diff --git a/minecraft-server/Dockerfile-raspberrypi b/minecraft-server/Dockerfile-raspberrypi new file mode 100644 index 00000000..0f98f146 --- /dev/null +++ b/minecraft-server/Dockerfile-raspberrypi @@ -0,0 +1,62 @@ +FROM arm32v6/openjdk:8u151-jre-alpine + +LABEL maintainer "itzg" + +RUN apk add -U \ + openssl \ + imagemagick \ + lsof \ + su-exec \ + bash \ + curl iputils wget \ + git \ + jq \ + mysql-client \ + python python-dev py2-pip && \ + rm -rf /var/cache/apk/* + +RUN pip install mcstatus + +HEALTHCHECK CMD mcstatus localhost ping + +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 + +EXPOSE 25565 25575 + +ARG RESTIFY_VER=1.1.4 +ARG RCON_CLI_VER=1.4.0 +ARG MC_SERVER_RUNNER_VER=1.1.2 +ARG ARCH=armv6 + +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 + +COPY mcadmin.jq /usr/share +RUN chmod +x /usr/local/bin/* + +VOLUME ["/data","/mods","/config","/plugins"] +COPY server.properties /tmp/server.properties +WORKDIR /data + +ENTRYPOINT [ "/start" ] + +ENV 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= SERVER_PORT=25565 ONLINE_MODE=TRUE CONSOLE=true + +COPY start* / + +USER minecraft