| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.ref.name=ubuntu |
| LABEL org.opencontainers.image.version=20.04 |
| ADD file:7486147a645d8835a5181c79f00a3606c6b714c83bcbfcd8862221eb14690f9e in / |
| CMD ["/bin/bash"] |
| ENV JAVA_HOME=/opt/java/openjdk |
| ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 |
| RUN /bin/sh -c set -eux; apt-get update; DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends curl wget gnupg fontconfig ca-certificates p11-kit tzdata locales ; echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen; locale-gen en_US.UTF-8; rm -rf /var/lib/apt/lists/* # buildkit |
| ENV JAVA_VERSION=jdk-17.0.13+11 |
| RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='4086cc7cb2d9e7810141f255063caad10a8a018db5e6b47fa5394c506ab65bff'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.13%2B11/OpenJDK17U-jre_x64_linux_hotspot_17.0.13_11.tar.gz'; ;; arm64) ESUM='97c4fb748eaa1292fb2f28fec90a3eba23e35974ef67f8b3aa304ad4db2ba162'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.13%2B11/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.13_11.tar.gz'; ;; armhf) ESUM='f9c4008680db016c9cab26cc2739d4553898911522f6a78a611fafa1f5270c88'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.13%2B11/OpenJDK17U-jre_arm_linux_hotspot_17.0.13_11.tar.gz'; ;; ppc64el) ESUM='790f53fcc95cc76ed8f27d3146cf789fc354a2afb7148cffd197ca61a643212f'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.13%2B11/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.13_11.tar.gz'; ;; s390x) ESUM='0f46246643b6543c097d6eda4db03dbe5c8372217e06d661ac0fb3882eab007d'; BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.13%2B11/OpenJDK17U-jre_s390x_linux_hotspot_17.0.13_11.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; wget --progress=dot:giga -O /tmp/openjdk.tar.gz ${BINARY_URL}; wget --progress=dot:giga -O /tmp/openjdk.tar.gz.sig ${BINARY_URL}.sig; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 3B04D753C9050D9A5D343F39843C48A565F8F04B; gpg --batch --verify /tmp/openjdk.tar.gz.sig /tmp/openjdk.tar.gz; rm -r "${GNUPGHOME}" /tmp/openjdk.tar.gz.sig; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p "$JAVA_HOME"; tar --extract --file /tmp/openjdk.tar.gz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm -f /tmp/openjdk.tar.gz ${JAVA_HOME}/lib/src.zip; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; # buildkit |
| RUN /bin/sh -c set -eux; echo "Verifying install ..."; echo "java --version"; java --version; echo "Complete." # buildkit |
| COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit |
| ENTRYPOINT ["/__cacert_entrypoint.sh"] |
| LABEL author=UpInSmoke maintainer=hi@upinsmoke.systems |
| VOLUME [/data /home/container] |
| WORKDIR /data |
| RUN /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y imagemagick file gosu sudo net-tools iputils-ping curl git jq dos2unix mysql-client tzdata rsync nano unzip zstd lbzip2 nfs-common libpcap0.8 webp && apt-get clean # buildkit |
| ARG TARGETOS=linux |
| ARG TARGETARCH=amd64 |
| ARG TARGETVARIANT= |
| ARG APPS_REV=1 |
| ARG GITHUB_BASEURL=https://github.com |
| ARG EASY_ADD_VERSION=0.8.2 |
| ADD https://github.com/itzg/easy-add/releases/download/0.8.2/easy-add_linux_amd64 /usr/bin/easy-add # buildkit |
| RUN |6 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= APPS_REV=1 GITHUB_BASEURL=https://github.com EASY_ADD_VERSION=0.8.2 /bin/sh -c chmod +x /usr/bin/easy-add # buildkit |
| ARG RESTIFY_VERSION=1.7.1 |
| RUN |7 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= APPS_REV=1 GITHUB_BASEURL=https://github.com EASY_ADD_VERSION=0.8.2 RESTIFY_VERSION=1.7.1 /bin/sh -c easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} --var version=${RESTIFY_VERSION} --var app=restify --file {{.app}} --from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz # buildkit |
| ARG RCON_CLI_VERSION=1.6.4 |
| RUN |8 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= APPS_REV=1 GITHUB_BASEURL=https://github.com EASY_ADD_VERSION=0.8.2 RESTIFY_VERSION=1.7.1 RCON_CLI_VERSION=1.6.4 /bin/sh -c easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} --var version=${RCON_CLI_VERSION} --var app=rcon-cli --file {{.app}} --from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz # buildkit |
| ARG MC_MONITOR_VERSION=0.12.6 |
| RUN |9 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= APPS_REV=1 GITHUB_BASEURL=https://github.com EASY_ADD_VERSION=0.8.2 RESTIFY_VERSION=1.7.1 RCON_CLI_VERSION=1.6.4 MC_MONITOR_VERSION=0.12.6 /bin/sh -c easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} --var version=${MC_MONITOR_VERSION} --var app=mc-monitor --file {{.app}} --from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz # buildkit |
| ARG MC_SERVER_RUNNER_VERSION=1.9.1 |
| RUN |10 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= APPS_REV=1 GITHUB_BASEURL=https://github.com EASY_ADD_VERSION=0.8.2 RESTIFY_VERSION=1.7.1 RCON_CLI_VERSION=1.6.4 MC_MONITOR_VERSION=0.12.6 MC_SERVER_RUNNER_VERSION=1.9.1 /bin/sh -c easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} --var version=${MC_SERVER_RUNNER_VERSION} --var app=mc-server-runner --file {{.app}} --from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz # buildkit |
| ARG MC_HELPER_VERSION=1.37.3 |
| ARG MC_HELPER_BASE_URL=https://github.com/itzg/mc-image-helper/releases/download/1.37.3 |
| ARG MC_HELPER_REV=1 |
| RUN |13 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= APPS_REV=1 GITHUB_BASEURL=https://github.com EASY_ADD_VERSION=0.8.2 RESTIFY_VERSION=1.7.1 RCON_CLI_VERSION=1.6.4 MC_MONITOR_VERSION=0.12.6 MC_SERVER_RUNNER_VERSION=1.9.1 MC_HELPER_VERSION=1.37.3 MC_HELPER_BASE_URL=https://github.com/itzg/mc-image-helper/releases/download/1.37.3 MC_HELPER_REV=1 /bin/sh -c curl -fsSL ${MC_HELPER_BASE_URL}/mc-image-helper-${MC_HELPER_VERSION}.tgz | tar -C /usr/share -zxf - && ln -s /usr/share/mc-image-helper-${MC_HELPER_VERSION}/bin/mc-image-helper /usr/bin # buildkit |
| ENV SERVER_PORT=19132 RCON_PORT=25575 |
| EXPOSE map[19132/tcp:{}] |
| COPY . /data # buildkit |
| RUN |13 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= APPS_REV=1 GITHUB_BASEURL=https://github.com EASY_ADD_VERSION=0.8.2 RESTIFY_VERSION=1.7.1 RCON_CLI_VERSION=1.6.4 MC_MONITOR_VERSION=0.12.6 MC_SERVER_RUNNER_VERSION=1.9.1 MC_HELPER_VERSION=1.37.3 MC_HELPER_BASE_URL=https://github.com/itzg/mc-image-helper/releases/download/1.37.3 MC_HELPER_REV=1 /bin/sh -c useradd -d /home/container -m container # buildkit |
| USER container |
| ENV USER=container HOME=/home/container |
| WORKDIR /home/container |
| STOPSIGNAL SIGTERM |
| COPY ./entrypoint.sh /entrypoint.sh # buildkit |
| COPY ./health.sh /usr/bin/health.sh # buildkit |
| CMD ["/bin/bash" "/entrypoint.sh"] |