act-runner (sha256:2ff1a67b78e5d824c38946f92f7c851961db1b06339266cae088da2a65fad714)

Published 2025-09-09 22:01:29 +01:00 by tom in tom/act-runner

Installation

docker pull git.tomfos.tr/tom/act-runner@sha256:2ff1a67b78e5d824c38946f92f7c851961db1b06339266cae088da2a65fad714
sha256:2ff1a67b78e5d824c38946f92f7c851961db1b06339266cae088da2a65fad714

About this package

Optimized ACT/Forgejo runner with essential CI tools for Ubuntu 24.04

Image layers

ARG RELEASE
ARG LAUNCHPAD_BUILD_ARCH
LABEL org.opencontainers.image.ref.name=ubuntu
LABEL org.opencontainers.image.version=24.04
ADD file:55e5af389c76b79c77275691d488810a1fd875fe7e47b4b14a8b70f1230bf1a2 in /
CMD ["/bin/bash"]
ARG UBUNTU_TAG=latest
ARG UBUNTU_VERSION=24.04
ARG TARGETARCH=ppc64le
SHELL [/bin/bash -e -c]
ENV DEBIAN_FRONTEND=noninteractive
LABEL org.opencontainers.image.title=act-runner-ubuntu24.04 org.opencontainers.image.description=Optimized ACT/Forgejo runner with essential CI tools for Ubuntu 24.04 org.opencontainers.image.url=https://git.tomfos.tr/tom/act-runner org.opencontainers.image.source=https://git.tomfos.tr/tom/act-runner org.opencontainers.image.documentation=https://git.tomfos.tr/tom/act-runner/src/branch/main/README.md org.opencontainers.image.vendor=git.tomfos.tr org.opencontainers.image.licenses=MIT org.opencontainers.image.authors=Tom Foster
RUN |3 UBUNTU_TAG=latest UBUNTU_VERSION=24.04 TARGETARCH=ppc64le /bin/bash -e -c apt-get update && apt-get install -y --no-install-recommends apt-utils build-essential bzip2 cmake curl file g++ gcc gzip jq libffi-dev make patch pkg-config rsync tar unzip wget xz-utils zip && rm -rf /var/lib/apt/lists/* # buildkit
RUN |3 UBUNTU_TAG=latest UBUNTU_VERSION=24.04 TARGETARCH=ppc64le /bin/bash -e -c apt-get update && apt-get install -y --no-install-recommends ca-certificates git git-lfs gnupg gpg libcairo2 libssl-dev lsb-release openssh-client software-properties-common sudo && rm -rf /var/lib/apt/lists/* # buildkit
RUN |3 UBUNTU_TAG=latest UBUNTU_VERSION=24.04 TARGETARCH=ppc64le /bin/bash -e -c apt-get update && apt-get install -y --no-install-recommends docker-compose docker.io && rm -rf /var/lib/apt/lists/* && mkdir -p -m 755 /opt/hostedtoolcache # buildkit
ARG NODE_VERSIONS=24 22
RUN |4 UBUNTU_TAG=latest UBUNTU_VERSION=24.04 TARGETARCH=ppc64le NODE_VERSIONS=24 22 /bin/bash -e -c for VERSION in ${NODE_VERSIONS}; do NODE_URL="https://nodejs.org/dist/latest-v${VERSION}.x/"; NODE_VERSION=$(curl -sL ${NODE_URL} | grep -oP 'node-v\K[0-9]+\.[0-9]+\.[0-9]+' | head -1); FULL_VERSION="v${NODE_VERSION}"; ARCH=$(dpkg --print-architecture | sed 's/amd64/x64/;s/ppc64el/ppc64le/'); TARBALL="/tmp/downloads/node-${FULL_VERSION}-linux-${ARCH}.tar.xz"; if [ ! -f "${TARBALL}" ] || ! xz -t "${TARBALL}" 2>/dev/null; then echo "Downloading Node.js ${FULL_VERSION} for ${ARCH}..."; rm -f "${TARBALL}"; curl -fSL "${NODE_URL}/node-${FULL_VERSION}-linux-${ARCH}.tar.xz" -o "${TARBALL}" || (echo "Failed to download Node.js ${FULL_VERSION} for ${ARCH}" && exit 1); xz -t "${TARBALL}" || (echo "Downloaded file is corrupted" && rm -f "${TARBALL}" && exit 1); fi; NODE_PATH="/opt/hostedtoolcache/node/${NODE_VERSION}/${ARCH}"; mkdir -p "${NODE_PATH}"; echo "Extracting Node.js ${FULL_VERSION} to ${NODE_PATH}..."; tar -xJf "${TARBALL}" --strip-components=1 -C "${NODE_PATH}"; done # buildkit
RUN |4 UBUNTU_TAG=latest UBUNTU_VERSION=24.04 TARGETARCH=ppc64le NODE_VERSIONS=24 22 /bin/bash -e -c NODE_VERSION=$(ls /opt/hostedtoolcache/node | sort -V | tail -1) && ARCH=$(dpkg --print-architecture | sed 's/amd64/x64/;s/armhf/armv7l/;s/ppc64el/ppc64le/') && echo "export PATH=/opt/hostedtoolcache/node/${NODE_VERSION}/${ARCH}/bin:\$PATH" >> /etc/profile.d/node.sh && ln -sf /opt/hostedtoolcache/node/${NODE_VERSION}/${ARCH}/bin/node /usr/local/bin/node && ln -sf /opt/hostedtoolcache/node/${NODE_VERSION}/${ARCH}/bin/npm /usr/local/bin/npm && ln -sf /opt/hostedtoolcache/node/${NODE_VERSION}/${ARCH}/bin/npx /usr/local/bin/npx # buildkit
RUN |4 UBUNTU_TAG=latest UBUNTU_VERSION=24.04 TARGETARCH=ppc64le NODE_VERSIONS=24 22 /bin/bash -e -c apt-get update && apt-get install -y --no-install-recommends python3 python3-venv python3-apt && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit
ENV UV_LINK_MODE=copy
ENV PATH=/root/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
RUN |4 UBUNTU_TAG=latest UBUNTU_VERSION=24.04 TARGETARCH=ppc64le NODE_VERSIONS=24 22 /bin/bash -e -c curl -LsSf https://astral.sh/uv/install.sh | sh && /root/.local/bin/uv tool install prek && /root/.local/bin/uv tool install ruff && /root/.local/bin/uv tool install mypy && /root/.local/bin/uv tool install pytest && /root/.local/bin/uv tool install black && /root/.local/bin/uv tool install isort && curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --no-modify-path --profile minimal --default-toolchain none && echo 'source $HOME/.cargo/env' >> /etc/bash.bashrc # buildkit
RUN |4 UBUNTU_TAG=latest UBUNTU_VERSION=24.04 TARGETARCH=ppc64le NODE_VERSIONS=24 22 /bin/bash -e -c mkdir -p -m 755 /etc/apt/keyrings /etc/apt/sources.list.d && wget -q -O- https://cli.github.com/packages/githubcli-archive-keyring.gpg | gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" > /etc/apt/sources.list.d/github-cli.list && apt-get update && apt-get install -y --no-install-recommends gh && rm -rf /var/lib/apt/lists/* # buildkit
ARG K8S_VERSION=1.34
RUN |5 UBUNTU_TAG=latest UBUNTU_VERSION=24.04 TARGETARCH=ppc64le NODE_VERSIONS=24 22 K8S_VERSION=1.34 /bin/bash -e -c mkdir -p -m 755 /etc/apt/keyrings /etc/apt/sources.list.d && apt-get update && apt-get install -y --no-install-recommends software-properties-common && if [ "${UBUNTU_TAG}" != "rolling" ]; then add-apt-repository ppa:deadsnakes/ppa -y; fi && wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | gpg --dearmor -o /etc/apt/keyrings/llvm-archive-keyring.gpg && echo "deb [signed-by=/etc/apt/keyrings/llvm-archive-keyring.gpg] http://apt.llvm.org/$(lsb_release -cs)/ llvm-toolchain-$(lsb_release -cs) main" > /etc/apt/sources.list.d/llvm.list && curl -fsSL https://pkgs.k8s.io/core:/stable:/v${K8S_VERSION}/deb/Release.key | gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg && echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v${K8S_VERSION}/deb/ /" > /etc/apt/sources.list.d/kubernetes.list && wget -q -O- https://apt.releases.hashicorp.com/gpg | gpg --dearmor -o /etc/apt/keyrings/hashicorp-archive-keyring.gpg && echo "deb [signed-by=/etc/apt/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" > /etc/apt/sources.list.d/hashicorp.list && PACKAGE_PATH="/tmp/downloads/packages-microsoft-prod-$(lsb_release -rs).deb" && if [ ! -f "${PACKAGE_PATH}" ]; then wget -q https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb -O "${PACKAGE_PATH}"; fi && dpkg -i "${PACKAGE_PATH}" && chmod 644 /etc/apt/keyrings/*.gpg 2>/dev/null || true && rm -rf /var/lib/apt/lists/* # buildkit
ENV AGENT_TOOLSDIRECTORY=/opt/hostedtoolcache BUILDKIT_PROGRESS=plain CI=true DOCKER_BUILDKIT=1 UBUNTU_VERSION=24.04 PATH=/root/.local/bin:/root/.cargo/bin:/root/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
WORKDIR /tmp
RUN |5 UBUNTU_TAG=latest UBUNTU_VERSION=24.04 TARGETARCH=ppc64le NODE_VERSIONS=24 22 K8S_VERSION=1.34 /bin/bash -e -c git --version && docker --version && gh --version && python3 --version && (command -v rustup >/dev/null 2>&1 && rustup --version || echo "Rust not installed") && uv --version && (command -v node >/dev/null 2>&1 && node --version || echo "Node.js not installed") && (command -v npm >/dev/null 2>&1 && npm --version || echo "npm not installed") && apt-get update # buildkit

Labels

Key Value
org.opencontainers.image.authors Tom Foster
org.opencontainers.image.description Optimized ACT/Forgejo runner with essential CI tools for Ubuntu 24.04
org.opencontainers.image.documentation https://git.tomfos.tr/tom/act-runner/src/branch/main/README.md
org.opencontainers.image.licenses MIT
org.opencontainers.image.ref.name ubuntu
org.opencontainers.image.source https://git.tomfos.tr/tom/act-runner
org.opencontainers.image.title act-runner-ubuntu24.04
org.opencontainers.image.url https://git.tomfos.tr/tom/act-runner
org.opencontainers.image.vendor git.tomfos.tr
org.opencontainers.image.version 24.04
Details
Container
2025-09-09 22:01:29 +01:00
3
OCI / Docker
linux/ppc64le
Tom Foster
MIT
517 MiB
Versions (34) View all
debian-latest 2025-09-10
debian-sid 2025-09-10
debian-oldstable 2025-09-10