Block a user
minecraft_server (latest)
Published 2024-10-20 09:50:48 -04:00 by el
Installation
docker pull git.jisoonet.com/el/minecraft_server:latestsha256:7bf3c21622da5b3743b40745b41d0d23ea300884139b75bd327bac99fc28a4a4
Image Layers
| ADD file:90b9dd8f12120e8b2cd3ece45fcbe8af67e40565e2032a40f64bd921c43e2ce7 in / |
| CMD ["bash"] |
| RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates p11-kit ; rm -rf /var/lib/apt/lists/* # buildkit |
| ENV JAVA_HOME=/usr/local/openjdk-24 |
| ENV PATH=/usr/local/openjdk-24/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| ENV LANG=C.UTF-8 |
| ENV JAVA_VERSION=24-ea+20 |
| RUN /bin/sh -c set -eux; arch="$(dpkg --print-architecture)"; case "$arch" in 'amd64') downloadUrl='https://download.java.net/java/early_access/jdk24/20/GPL/openjdk-24-ea+20_linux-x64_bin.tar.gz'; downloadSha256='b7a84616949bac4a00a9a96d771f6595e7fed371c0a5a54139285311e4c0b367'; ;; 'arm64') downloadUrl='https://download.java.net/java/early_access/jdk24/20/GPL/openjdk-24-ea+20_linux-aarch64_bin.tar.gz'; downloadSha256='4fe26b4900462d35fcaa9c7b551fd23791906f05eab3a609de8d771cc15ad9d0'; ;; *) echo >&2 "error: unsupported architecture: '$arch'"; exit 1 ;; esac; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends wget ; rm -rf /var/lib/apt/lists/*; wget --progress=dot:giga -O openjdk.tgz "$downloadUrl"; echo "$downloadSha256 *openjdk.tgz" | sha256sum --strict --check -; mkdir -p "$JAVA_HOME"; tar --extract --file openjdk.tgz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm openjdk.tgz*; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; { echo '#!/usr/bin/env bash'; echo 'set -Eeuo pipefail'; echo 'trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$JAVA_HOME/lib/security/cacerts"'; } > /etc/ca-certificates/update.d/docker-openjdk; chmod +x /etc/ca-certificates/update.d/docker-openjdk; /etc/ca-certificates/update.d/docker-openjdk; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; fileEncoding="$(echo 'System.out.println(System.getProperty("file.encoding"))' | jshell -s -)"; [ "$fileEncoding" = 'UTF-8' ]; rm -rf ~/.java; javac --version; java --version # buildkit |
| CMD ["jshell"] |
| ENV JAVA_XMS=1024M |
| ENV JAVA_XMX=1024M |
| ENV MINECRAFT_VERSION=latest |
| WORKDIR /minecraft_server |
| RUN /bin/sh -c apt update && apt install -y curl jq file unzip # buildkit |
| RUN /bin/sh -c useradd -m minecraft_user # buildkit |
| RUN /bin/sh -c mkdir appdata && chown minecraft_user:minecraft_user /minecraft_server/appdata && chmod 700 /minecraft_server/appdata # buildkit |
| RUN /bin/sh -c echo "eula=true" > appdata/eula.txt && chown minecraft_user:minecraft_user /minecraft_server/appdata/eula.txt # buildkit |
| VOLUME [/minecraft_server/appdata] |
| EXPOSE map[25565/tcp:{}] |
| EXPOSE map[25575/tcp:{}] |
| COPY entrypoint.sh . # buildkit |
| RUN /bin/sh -c chmod +x entrypoint.sh # buildkit |
| USER minecraft_user |
| CMD ["./entrypoint.sh"] |