forgejo-runner-macbook (sha256:35e05cf2825acdb7d86c20359a789530adcedd7c68041d7275d57f12f92e9cd6)
Published 2026-09-26 16:11:15 +00:00 by benjamin
Installation
docker pull git.delpech.dev/benjamin/forgejo-runner-macbook@sha256:35e05cf2825acdb7d86c20359a789530adcedd7c68041d7275d57f12f92e9cd6sha256:35e05cf2825acdb7d86c20359a789530adcedd7c68041d7275d57f12f92e9cd6Image layers
| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.version=22.04 |
| ADD file:81c01921c5f642ac2fcbfae682e489e8e64b347467d9fa1587707e310e64d790 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 binutils 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-21.0.12.1+1 |
| RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='ce79869e1307ed8ee1e2baa86a412b1eb5b75d10a01006d788a6f968bcfaee94'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.12.1%2B1/OpenJDK21U-jdk_x64_linux_hotspot_21.0.12.1_1.tar.gz'; ;; arm64) ESUM='23e37e026f12f3e706f18938ff611db3032d075b09d0879a25d06718c773e223'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.12.1%2B1/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.12.1_1.tar.gz'; ;; ppc64el) ESUM='042482fa372f12741ceb721397e277b4e69672182aaa45a1bf7af55d9ba876d6'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.12.1%2B1/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.12.1_1.tar.gz'; ;; s390x) ESUM='806bb29b0d408eb6312cda0a1e756bc91e554ef9ed6a5863f6004e502f6c789a'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.12.1%2B1/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.12.1_1.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 -rf "${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 ..."; fileEncoding="$(echo 'System.out.println(System.getProperty("file.encoding"))' | jshell -s -)"; [ "$fileEncoding" = 'UTF-8' ]; rm -rf ~/.java; echo "javac --version"; javac --version; echo "java --version"; java --version; echo "Complete." # buildkit |
| COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit |
| ENTRYPOINT ["/__cacert_entrypoint.sh"] |
| CMD ["jshell"] |
| USER root |
| RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends git curl jq python3 python3-pip unzip zip ca-certificates xz-utils && curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && apt-get install -y --no-install-recommends nodejs && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends libnss3 libnspr4 libatk1.0-0 libatk-bridge2.0-0 libcups2 libdrm2 libxkbcommon0 libxcomposite1 libxdamage1 libxfixes3 libxrandr2 libgbm1 libpango-1.0-0 libcairo2 libasound2 libatspi2.0-0 && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit |
| COPY /bin/forgejo-runner /usr/local/bin/forgejo-runner # buildkit |
| RUN /bin/sh -c chgrp 0 /usr/local/bin && chmod g+rwX /usr/local/bin && mkdir -p /data && chown 1000:0 /data && chmod g+rwX /data # buildkit |
| COPY /usr/local/bin/docker /usr/local/bin/docker # buildkit |
| COPY /usr/local/libexec/docker/cli-plugins/docker-buildx /usr/local/libexec/docker/cli-plugins/docker-buildx # buildkit |
| RUN /bin/sh -c useradd -u 1000 -g 0 -M -d /data -s /usr/sbin/nologin forgejo && groupadd -g 990 dockerhost && usermod -aG dockerhost forgejo # buildkit |
| ENV PIP_BREAK_SYSTEM_PACKAGES=1 |
| WORKDIR /data |
| ENV HOME=/data |
| RUN /bin/sh -c set -eu; for b in forgejo-runner git curl jq python3 node java javac docker; do command -v "$b" >/dev/null || { echo "MANQUANT: $b"; exit 1; }; done; forgejo-runner --version; java -version 2>&1 | head -1; node --version; echo "-- plugin buildx (cross-build arm64 -> amd64) --"; docker buildx version || { echo "MANQUANT: buildx"; exit 1; }; echo "-- bibliotheques Chromium (Playwright) --"; for l in libnss3 libatk-1.0 libgbm libasound libcups libxkbcommon; do ldconfig -p | grep -q "$l" || { echo "MANQUANT: $l"; exit 1; }; echo " ok $l"; done; echo "-- groupe dockerhost (acces socket Docker de l'hote) --"; id -nG 1000 | grep -qw dockerhost || { echo "MANQUANT: UID 1000 pas membre de dockerhost"; exit 1; }; echo " ok dockerhost (GID 990)" # buildkit |
| USER 1000 |
Labels
| Key | Value |
|---|---|
| org.opencontainers.image.version | 22.04 |
Details
2026-09-26 16:11:15 +00:00
Versions (6)
View all
Container
4
OCI / Docker
linux/amd64
332 MiB
20260926-multiarch
2026-09-26
20260920-buildx
2026-09-20
20260907-dockergroup
2026-09-07
20260906-multiarch
2026-09-06
20260831-dockercli
2026-08-31