JLab Cluster

coder-workspace (2026)

Published 2026-10-14 00:15:58 +02:00 by jlab-bot

Installation

docker pull git.jk-dev.de/jlab-cluster/coder-workspace:2026
sha256:6360d9d4c07a97ff81e8490e4c5d091793b185eb930ff01759e43184031a9471

Images

Digest OS / Arch Size
73dc7a5c2a linux/amd64 1.1 GiB

Image Layers ( linux/amd64)

umoci raw add-layer --image /home/buildd/rockcraft-ubuntu-1b6090acdaa4d41535f88b18cf344a81/images/ubuntu:rockcraft-base /home/buildd/rockcraft-ubuntu-1b6090acdaa4d41535f88b18cf344a81/images/.temp_layer.9550.tar --tag 26.04
umoci config --image /home/buildd/rockcraft-ubuntu-1b6090acdaa4d41535f88b18cf344a81/images/ubuntu:26.04 --clear=config.entrypoint --clear=config.cmd
umoci config --image /home/buildd/rockcraft-ubuntu-1b6090acdaa4d41535f88b18cf344a81/images/ubuntu:26.04 --clear=config.cmd --config.cmd /bin/bash
umoci config --image /home/buildd/rockcraft-ubuntu-1b6090acdaa4d41535f88b18cf344a81/images/ubuntu:26.04 --config.env PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
umoci config --image /home/buildd/rockcraft-ubuntu-1b6090acdaa4d41535f88b18cf344a81/images/ubuntu:26.04 --clear=config.labels --config.label org.opencontainers.image.version=26.04 --config.label org.opencontainers.image.title=ubuntu --config.label org.opencontainers.image.created=2026-09-27T10:25:52.887617+00:00 --config.label org.opencontainers.image.description=The Ubuntu container image maintained by Canonical Ubuntu is a Debian-based Linux operating system that runs from the desktop to the cloud, to all your internet connected things. It is the world's most popular operating system across public clouds and OpenStack clouds. It is the number one platform for containers; from Docker to Kubernetes to LXD, Ubuntu can run your containers at scale. Fast, secure and simple, Ubuntu powers millions of PCs worldwide.
umoci config --image /home/buildd/rockcraft-ubuntu-1b6090acdaa4d41535f88b18cf344a81/images/ubuntu:26.04 --clear=manifest.annotations --manifest.annotation org.opencontainers.image.version=26.04 --manifest.annotation org.opencontainers.image.title=ubuntu --manifest.annotation org.opencontainers.image.created=2026-09-27T10:25:52.887617+00:00 --manifest.annotation org.opencontainers.image.description=The Ubuntu container image maintained by Canonical Ubuntu is a Debian-based Linux operating system that runs from the desktop to the cloud, to all your internet connected things. It is the world's most popular operating system across public clouds and OpenStack clouds. It is the number one platform for containers; from Docker to Kubernetes to LXD, Ubuntu can run your containers at scale. Fast, secure and simple, Ubuntu powers millions of PCs worldwide.
umoci raw add-layer --image /home/buildd/rockcraft-ubuntu-1b6090acdaa4d41535f88b18cf344a81/images/ubuntu:26.04 /home/buildd/rockcraft-ubuntu-1b6090acdaa4d41535f88b18cf344a81/images/.temp_layer.control_data.9550.tar
SHELL [/bin/bash -c]
ENV DEBIAN_FRONTEND=noninteractive
RUN /bin/bash -c apt-get update && apt-get upgrade --yes --no-install-recommends --no-install-suggests && apt-get install --yes --no-install-recommends --no-install-suggests ca-certificates && rm -rf /var/lib/apt/lists/* # buildkit
COPY docker-archive-keyring.gpg /usr/share/keyrings/docker-archive-keyring.gpg # buildkit
COPY docker.list /etc/apt/sources.list.d/docker.list # buildkit
RUN /bin/bash -c apt-get update && apt-get install --yes --no-install-recommends --no-install-suggests bash build-essential containerd.io curl docker-ce docker-ce-cli docker-buildx-plugin docker-compose-plugin htop jq locales man pipx python3 python3-pip software-properties-common sudo systemd systemd-sysv unzip vim wget rsync iproute2 && add-apt-repository ppa:git-core/ppa && apt-get install --yes git && rm -rf /var/lib/apt/lists/* # buildkit
RUN /bin/bash -c systemctl enable docker # buildkit
RUN /bin/bash -c ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/bin/docker-compose # buildkit
RUN /bin/bash -c locale-gen en_US.UTF-8 # buildkit
ENV LANG=en_US.UTF-8
ENV LANGUAGE=en_US.UTF-8
ENV LC_ALL=en_US.UTF-8
RUN /bin/bash -c userdel -r ubuntu && useradd coder --create-home --shell=/bin/bash --groups=docker --uid=1000 --user-group && echo "coder ALL=(ALL) NOPASSWD:ALL" >>/etc/sudoers.d/nopasswd # buildkit
USER coder
RUN /bin/bash -c pipx ensurepath # adds user's bin directory to PATH # buildkit
USER root
SHELL [/bin/bash -o pipefail -c]
ARG TEA_VERSION=0.16.0
ARG HELM_VERSION=v3.22.0
ARG KUBECTL_VERSION=v1.35.9
ARG CLAUDE_CODE_VERSION=2.1.296
ARG OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9
ARG POWERLEVEL10K_VERSION=v1.20.0
ARG ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0
ARG ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1
ARG JAVA_25_VERSION=25.0.4.1+1
ARG JAVA_21_VERSION=21.0.12.1+1
ARG NODE_VERSION=24.21.0
ARG MAVEN_VERSION=3.10.0
ARG GRADLE_VERSION=9.8.1
RUN |13 TEA_VERSION=0.16.0 HELM_VERSION=v3.22.0 KUBECTL_VERSION=v1.35.9 CLAUDE_CODE_VERSION=2.1.296 OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9 POWERLEVEL10K_VERSION=v1.20.0 ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0 ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1 JAVA_25_VERSION=25.0.4.1+1 JAVA_21_VERSION=21.0.12.1+1 NODE_VERSION=24.21.0 MAVEN_VERSION=3.10.0 GRADLE_VERSION=9.8.1 /bin/bash -o pipefail -c apt-get update && apt-get install --yes --no-install-recommends --no-install-suggests zsh openssh-client podman uidmap passt && rm -rf /var/lib/apt/lists/* # buildkit
RUN |13 TEA_VERSION=0.16.0 HELM_VERSION=v3.22.0 KUBECTL_VERSION=v1.35.9 CLAUDE_CODE_VERSION=2.1.296 OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9 POWERLEVEL10K_VERSION=v1.20.0 ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0 ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1 JAVA_25_VERSION=25.0.4.1+1 JAVA_21_VERSION=21.0.12.1+1 NODE_VERSION=24.21.0 MAVEN_VERSION=3.10.0 GRADLE_VERSION=9.8.1 /bin/bash -o pipefail -c cd /tmp && curl -fsSLO "https://dl.gitea.com/tea/${TEA_VERSION}/tea-${TEA_VERSION}-linux-amd64" && curl -fsSL "https://dl.gitea.com/tea/${TEA_VERSION}/tea-${TEA_VERSION}-linux-amd64.sha256" | sha256sum -c - && install -m 0755 "tea-${TEA_VERSION}-linux-amd64" /usr/local/bin/tea && curl -fsSLO "https://get.helm.sh/helm-${HELM_VERSION}-linux-amd64.tar.gz" && curl -fsSL "https://get.helm.sh/helm-${HELM_VERSION}-linux-amd64.tar.gz.sha256sum" | sha256sum -c - && tar -xzf "helm-${HELM_VERSION}-linux-amd64.tar.gz" linux-amd64/helm && install -m 0755 linux-amd64/helm /usr/local/bin/helm && curl -fsSLO "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl" && echo "$(curl -fsSL "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl.sha256") kubectl" | sha256sum -c - && install -m 0755 kubectl /usr/local/bin/kubectl && rm -rf /tmp/* # buildkit
ENV DISABLE_AUTOUPDATER=1
RUN |13 TEA_VERSION=0.16.0 HELM_VERSION=v3.22.0 KUBECTL_VERSION=v1.35.9 CLAUDE_CODE_VERSION=2.1.296 OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9 POWERLEVEL10K_VERSION=v1.20.0 ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0 ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1 JAVA_25_VERSION=25.0.4.1+1 JAVA_21_VERSION=21.0.12.1+1 NODE_VERSION=24.21.0 MAVEN_VERSION=3.10.0 GRADLE_VERSION=9.8.1 /bin/bash -o pipefail -c base="https://downloads.claude.ai/claude-code-releases/${CLAUDE_CODE_VERSION}" && sum="$(curl -fsSL "${base}/manifest.json" | jq -er '.platforms["linux-x64"].checksum')" && curl -fsSL -o /usr/local/bin/claude "${base}/linux-x64/claude" && echo "${sum} /usr/local/bin/claude" | sha256sum -c - && chmod 0755 /usr/local/bin/claude && DISABLE_AUTOUPDATER=1 /usr/local/bin/claude --version # buildkit
RUN |13 TEA_VERSION=0.16.0 HELM_VERSION=v3.22.0 KUBECTL_VERSION=v1.35.9 CLAUDE_CODE_VERSION=2.1.296 OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9 POWERLEVEL10K_VERSION=v1.20.0 ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0 ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1 JAVA_25_VERSION=25.0.4.1+1 JAVA_21_VERSION=21.0.12.1+1 NODE_VERSION=24.21.0 MAVEN_VERSION=3.10.0 GRADLE_VERSION=9.8.1 /bin/bash -o pipefail -c set -eux; ver="${JAVA_25_VERSION}"; maj=25; file="OpenJDK${maj}U-jdk_x64_linux_hotspot_${ver//+/_}.tar.gz"; base="https://github.com/adoptium/temurin${maj}-binaries/releases/download/jdk-${ver//+/%2B}"; curl -fsSL -o "/tmp/${file}" "${base}/${file}"; echo "$(curl -fsSL "${base}/${file}.sha256.txt" | awk '{print $1}') /tmp/${file}" | sha256sum -c -; mkdir -p "/opt/java/temurin-${maj}"; tar -xzf "/tmp/${file}" -C "/opt/java/temurin-${maj}" --strip-components=1; rm -f "/tmp/${file}" # buildkit
RUN |13 TEA_VERSION=0.16.0 HELM_VERSION=v3.22.0 KUBECTL_VERSION=v1.35.9 CLAUDE_CODE_VERSION=2.1.296 OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9 POWERLEVEL10K_VERSION=v1.20.0 ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0 ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1 JAVA_25_VERSION=25.0.4.1+1 JAVA_21_VERSION=21.0.12.1+1 NODE_VERSION=24.21.0 MAVEN_VERSION=3.10.0 GRADLE_VERSION=9.8.1 /bin/bash -o pipefail -c set -eux; ver="${JAVA_21_VERSION}"; maj=21; file="OpenJDK${maj}U-jdk_x64_linux_hotspot_${ver//+/_}.tar.gz"; base="https://github.com/adoptium/temurin${maj}-binaries/releases/download/jdk-${ver//+/%2B}"; curl -fsSL -o "/tmp/${file}" "${base}/${file}"; echo "$(curl -fsSL "${base}/${file}.sha256.txt" | awk '{print $1}') /tmp/${file}" | sha256sum -c -; mkdir -p "/opt/java/temurin-${maj}"; tar -xzf "/tmp/${file}" -C "/opt/java/temurin-${maj}" --strip-components=1; rm -f "/tmp/${file}" # buildkit
RUN |13 TEA_VERSION=0.16.0 HELM_VERSION=v3.22.0 KUBECTL_VERSION=v1.35.9 CLAUDE_CODE_VERSION=2.1.296 OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9 POWERLEVEL10K_VERSION=v1.20.0 ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0 ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1 JAVA_25_VERSION=25.0.4.1+1 JAVA_21_VERSION=21.0.12.1+1 NODE_VERSION=24.21.0 MAVEN_VERSION=3.10.0 GRADLE_VERSION=9.8.1 /bin/bash -o pipefail -c set -eux; prio=1; for maj in 21 25; do for tool in java javac jar javadoc jshell keytool; do update-alternatives --install "/usr/bin/${tool}" "${tool}" "/opt/java/temurin-${maj}/bin/${tool}" "${prio}0"; done; prio=$((prio+1)); done; java -version; javac -version # buildkit
ENV JAVA_HOME=/opt/java/temurin-25 JAVA_25_HOME=/opt/java/temurin-25 JAVA_21_HOME=/opt/java/temurin-21
RUN |13 TEA_VERSION=0.16.0 HELM_VERSION=v3.22.0 KUBECTL_VERSION=v1.35.9 CLAUDE_CODE_VERSION=2.1.296 OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9 POWERLEVEL10K_VERSION=v1.20.0 ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0 ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1 JAVA_25_VERSION=25.0.4.1+1 JAVA_21_VERSION=21.0.12.1+1 NODE_VERSION=24.21.0 MAVEN_VERSION=3.10.0 GRADLE_VERSION=9.8.1 /bin/bash -o pipefail -c set -eux; file="node-v${NODE_VERSION}-linux-x64.tar.xz"; curl -fsSL -o "/tmp/${file}" "https://nodejs.org/dist/v${NODE_VERSION}/${file}"; echo "$(curl -fsSL "https://nodejs.org/dist/v${NODE_VERSION}/SHASUMS256.txt" | awk -v f="${file}" '$2 == f {print $1}') /tmp/${file}" | sha256sum -c -; tar -xJf "/tmp/${file}" -C /usr/local --strip-components=1 --no-same-owner; rm -f "/tmp/${file}"; corepack enable; node --version; npm --version; corepack --version # buildkit
RUN |13 TEA_VERSION=0.16.0 HELM_VERSION=v3.22.0 KUBECTL_VERSION=v1.35.9 CLAUDE_CODE_VERSION=2.1.296 OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9 POWERLEVEL10K_VERSION=v1.20.0 ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0 ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1 JAVA_25_VERSION=25.0.4.1+1 JAVA_21_VERSION=21.0.12.1+1 NODE_VERSION=24.21.0 MAVEN_VERSION=3.10.0 GRADLE_VERSION=9.8.1 /bin/bash -o pipefail -c set -eux; base="https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries"; curl -fsSL -o /tmp/maven.tar.gz "${base}/apache-maven-${MAVEN_VERSION}-bin.tar.gz"; echo "$(curl -fsSL "${base}/apache-maven-${MAVEN_VERSION}-bin.tar.gz.sha512") /tmp/maven.tar.gz" | sha512sum -c -; mkdir -p /opt/maven; tar -xzf /tmp/maven.tar.gz -C /opt/maven --strip-components=1; ln -s /opt/maven/bin/mvn /usr/local/bin/mvn; rm -f /tmp/maven.tar.gz; mvn --version # buildkit
RUN |13 TEA_VERSION=0.16.0 HELM_VERSION=v3.22.0 KUBECTL_VERSION=v1.35.9 CLAUDE_CODE_VERSION=2.1.296 OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9 POWERLEVEL10K_VERSION=v1.20.0 ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0 ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1 JAVA_25_VERSION=25.0.4.1+1 JAVA_21_VERSION=21.0.12.1+1 NODE_VERSION=24.21.0 MAVEN_VERSION=3.10.0 GRADLE_VERSION=9.8.1 /bin/bash -o pipefail -c set -eux; curl -fsSL -o /tmp/gradle.zip "https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip"; echo "$(curl -fsSL "https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip.sha256") /tmp/gradle.zip" | sha256sum -c -; unzip -q /tmp/gradle.zip -d /opt; mv "/opt/gradle-${GRADLE_VERSION}" /opt/gradle; ln -s /opt/gradle/bin/gradle /usr/local/bin/gradle; rm -f /tmp/gradle.zip; gradle --version # buildkit
RUN |13 TEA_VERSION=0.16.0 HELM_VERSION=v3.22.0 KUBECTL_VERSION=v1.35.9 CLAUDE_CODE_VERSION=2.1.296 OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9 POWERLEVEL10K_VERSION=v1.20.0 ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0 ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1 JAVA_25_VERSION=25.0.4.1+1 JAVA_21_VERSION=21.0.12.1+1 NODE_VERSION=24.21.0 MAVEN_VERSION=3.10.0 GRADLE_VERSION=9.8.1 /bin/bash -o pipefail -c git init --quiet /opt/oh-my-zsh && git -C /opt/oh-my-zsh fetch --quiet --depth 1 https://github.com/ohmyzsh/ohmyzsh "${OH_MY_ZSH_COMMIT}" && git -C /opt/oh-my-zsh checkout --quiet FETCH_HEAD && rm -rf /opt/oh-my-zsh/.git # buildkit
RUN |13 TEA_VERSION=0.16.0 HELM_VERSION=v3.22.0 KUBECTL_VERSION=v1.35.9 CLAUDE_CODE_VERSION=2.1.296 OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9 POWERLEVEL10K_VERSION=v1.20.0 ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0 ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1 JAVA_25_VERSION=25.0.4.1+1 JAVA_21_VERSION=21.0.12.1+1 NODE_VERSION=24.21.0 MAVEN_VERSION=3.10.0 GRADLE_VERSION=9.8.1 /bin/bash -o pipefail -c git clone --quiet --depth 1 --branch "${POWERLEVEL10K_VERSION}" https://github.com/romkatv/powerlevel10k.git /opt/oh-my-zsh/themes/powerlevel10k && rm -rf /opt/oh-my-zsh/plugins/zsh-syntax-highlighting /opt/oh-my-zsh/plugins/zsh-autosuggestions && git clone --quiet --depth 1 --branch "${ZSH_SYNTAX_HIGHLIGHTING_VERSION}" https://github.com/zsh-users/zsh-syntax-highlighting.git /opt/oh-my-zsh/plugins/zsh-syntax-highlighting && git clone --quiet --depth 1 --branch "${ZSH_AUTOSUGGESTIONS_VERSION}" https://github.com/zsh-users/zsh-autosuggestions.git /opt/oh-my-zsh/plugins/zsh-autosuggestions && rm -rf /opt/oh-my-zsh/themes/powerlevel10k/.git /opt/oh-my-zsh/plugins/zsh-syntax-highlighting/.git /opt/oh-my-zsh/plugins/zsh-autosuggestions/.git && gs=/opt/oh-my-zsh/themes/powerlevel10k/gitstatus && mkdir -p "$gs/usrbin" && GITSTATUS_CACHE_DIR=/tmp/gitstatus sh "$gs/install" -f -- sh -c 'install -m 0755 "$1" "$0/usrbin/gitstatusd"' "$gs" && test -x "$gs/usrbin/gitstatusd" && rm -rf /tmp/gitstatus # buildkit
COPY rootfs/ / # buildkit
RUN |13 TEA_VERSION=0.16.0 HELM_VERSION=v3.22.0 KUBECTL_VERSION=v1.35.9 CLAUDE_CODE_VERSION=2.1.296 OH_MY_ZSH_COMMIT=964ddf789b022b6958b27d02d7fa54f552de21e9 POWERLEVEL10K_VERSION=v1.20.0 ZSH_SYNTAX_HIGHLIGHTING_VERSION=0.8.0 ZSH_AUTOSUGGESTIONS_VERSION=v0.7.1 JAVA_25_VERSION=25.0.4.1+1 JAVA_21_VERSION=21.0.12.1+1 NODE_VERSION=24.21.0 MAVEN_VERSION=3.10.0 GRADLE_VERSION=9.8.1 /bin/bash -o pipefail -c echo 'skip_global_compinit=1' >> /etc/zsh/zshenv && echo 'source /etc/zsh/coder-workspace.zsh' >> /etc/zsh/zshrc && usermod --shell /bin/zsh coder && chmod 0755 /usr/local/bin/coder-workspace-init /usr/local/bin/coder-git-ssh-sign # buildkit
USER coder

Labels

Key Value
org.opencontainers.image.created 2026-09-27T10:25:52.887617+00:00
org.opencontainers.image.description The Ubuntu container image maintained by Canonical Ubuntu is a Debian-based Linux operating system that runs from the desktop to the cloud, to all your internet connected things. It is the world's most popular operating system across public clouds and OpenStack clouds. It is the number one platform for containers; from Docker to Kubernetes to LXD, Ubuntu can run your containers at scale. Fast, secure and simple, Ubuntu powers millions of PCs worldwide.
org.opencontainers.image.title ubuntu
org.opencontainers.image.version 26.04
Details
Container
2026-10-14 00:15:58 +02:00
0
OCI / Docker
Versions (20) View all
2026.10 2026-10-14
2026.10.13 2026-10-14
latest 2026-10-14
20261013-2d56fb3 2026-10-14
2026 2026-10-14