teamcity-agent-dotnet-maui-android (sha256:8567f11084e64c0725dc5520353c99711695f17d4412cad4f874217c1043962b)
Published 2026-10-10 13:25:21 +00:00 by moeardent
Installation
docker pull scm.moebiusol.eu/moebiusol/teamcity-agent-dotnet-maui-android@sha256:8567f11084e64c0725dc5520353c99711695f17d4412cad4f874217c1043962bsha256:8567f11084e64c0725dc5520353c99711695f17d4412cad4f874217c1043962bImage layers
| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.ref.name=ubuntu |
| LABEL org.opencontainers.image.version=24.04 |
| ADD file:1ae27d2ef4369361104b699712f3897141e394785df5d193d67b44626f57eb87 in / |
| CMD ["/bin/bash"] |
| ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 DEBIAN_FRONTEND=noninteractive TZ=Europe/London |
| RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends curl ca-certificates fontconfig locales unzip netcat-openbsd && apt-get install -y python3-venv && apt-get clean && rm -rf /var/lib/apt/lists/* && echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && locale-gen en_US.UTF-8 && rm -rf /var/lib/apt/lists/* && if id -u ubuntu >/dev/null 2>&1 && [ "$(id -u ubuntu)" -eq 1000 ]; then userdel -r -f ubuntu; fi && groupadd -g 1000 buildagent && useradd -m -u 1000 -g 1000 buildagent && groupadd -g 999 docker # buildkit |
| ARG jdkLinuxComponent |
| ARG jdkLinuxComponentMD5SUM |
| RUN |2 jdkLinuxComponent=https://corretto.aws/downloads/resources/21.0.9.10.1/amazon-corretto-21.0.9.10.1-linux-x64.tar.gz jdkLinuxComponentMD5SUM=18a45468ad50c1e0e09201de38c5c8f4 /bin/sh -c set -eux; curl -LfsSo /tmp/openjdk.tar.gz ${jdkLinuxComponent}; echo "${jdkLinuxComponentMD5SUM} */tmp/openjdk.tar.gz" | md5sum -c -; mkdir -p /opt/java/openjdk; cd /opt/java/openjdk; tar -xf /tmp/openjdk.tar.gz --strip-components=1; chown -R root:root /opt/java; rm -rf /tmp/openjdk.tar.gz; # buildkit |
| ENV JAVA_HOME=/opt/java/openjdk JDK_HOME=/opt/java/openjdk PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| RUN |2 jdkLinuxComponent=https://corretto.aws/downloads/resources/21.0.9.10.1/amazon-corretto-21.0.9.10.1-linux-x64.tar.gz jdkLinuxComponentMD5SUM=18a45468ad50c1e0e09201de38c5c8f4 /bin/sh -c update-alternatives --install /usr/bin/java java ${JDK_HOME}/bin/java 1 && update-alternatives --set java ${JDK_HOME}/bin/java && update-alternatives --install /usr/bin/javac javac ${JDK_HOME}/bin/javac 1 && update-alternatives --set javac ${JDK_HOME}/bin/javac # buildkit |
| ENV CONFIG_FILE=/data/teamcity_agent/conf/buildAgent.properties LANG=C.UTF-8 |
| COPY --chown=buildagent:buildagent run-agent.sh /run-agent.sh # buildkit |
| COPY --chown=buildagent:buildagent run-agent-services.sh /run-services.sh # buildkit |
| COPY --chown=buildagent:buildagent TeamCity/buildAgent /opt/buildagent # buildkit |
| RUN |2 jdkLinuxComponent=https://corretto.aws/downloads/resources/21.0.9.10.1/amazon-corretto-21.0.9.10.1-linux-x64.tar.gz jdkLinuxComponentMD5SUM=18a45468ad50c1e0e09201de38c5c8f4 /bin/sh -c chmod +x /opt/buildagent/bin/*.sh && chmod +x /run-agent.sh /run-services.sh && sync && mkdir -p /data/teamcity_agent/conf && chown -R buildagent:buildagent /data/teamcity_agent && sed -i -e 's/\r$//' /run-agent.sh && sed -i -e 's/\r$//' /run-services.sh # buildkit |
| USER buildagent |
| RUN |2 jdkLinuxComponent=https://corretto.aws/downloads/resources/21.0.9.10.1/amazon-corretto-21.0.9.10.1-linux-x64.tar.gz jdkLinuxComponentMD5SUM=18a45468ad50c1e0e09201de38c5c8f4 /bin/sh -c mkdir -p /opt/buildagent/work && mkdir -p /opt/buildagent/system/.teamcity-agent && mkdir -p /opt/buildagent/temp && mkdir -p /opt/buildagent/plugins && mkdir -p /opt/buildagent/logs && mkdir -p /opt/buildagent/tools && echo >> /opt/buildagent/system/.teamcity-agent/teamcity-agent.xml && sed -i -e 's/\r$//' /opt/buildagent/system/.teamcity-agent/teamcity-agent.xml && echo >> /opt/buildagent/system/.teamcity-agent/unpacked-plugins.xml && sed -i -e 's/\r$//' /opt/buildagent/system/.teamcity-agent/unpacked-plugins.xml # buildkit |
| VOLUME [/data/teamcity_agent/conf] |
| VOLUME [/opt/buildagent/work] |
| VOLUME [/opt/buildagent/system] |
| VOLUME [/opt/buildagent/temp] |
| VOLUME [/opt/buildagent/logs] |
| VOLUME [/opt/buildagent/tools] |
| VOLUME [/opt/buildagent/plugins] |
| CMD ["/run-services.sh"] |
| COPY /etc/gitconfig /etc/gitconfig # buildkit |
| COPY /usr/bin/git-lfs /usr/bin/git-lfs # buildkit |
| USER root |
| COPY run-docker.sh /services/run-docker.sh # buildkit |
| ARG dotnetCoreLinuxComponentVersion |
| ENV DOTNET_CLI_TELEMETRY_OPTOUT=true DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true ASPNETCORE_URLS=http://+:80 DOTNET_RUNNING_IN_CONTAINER=true DOTNET_USE_POLLING_FILE_WATCHER=true NUGET_XMLDOC_MODE=skip GIT_SSH_VARIANT=ssh DOTNET_SDK_VERSION= |
| ARG dotnetLinuxComponent |
| ARG dotnetLinuxComponentSHA512 |
| ARG dotnetLibs |
| ARG gitLinuxComponentVersion |
| ARG gitLFSLinuxComponentVersion |
| ARG dockerLinuxComponentVersion |
| ARG containerdIoLinuxComponentVersion |
| ARG p4Version |
| ARG gitLinuxComponentVersion |
| RUN |10 dotnetCoreLinuxComponentVersion= dotnetLinuxComponent=https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.415/dotnet-sdk-8.0.415-linux-x64.tar.gz dotnetLinuxComponentSHA512=0fc0499a857f161f7c35775bb3f50ac6f0333f02f5df21d21147d538eb26a9a87282d4ba3707181c46f3c09d22cdc984e77820a5953a773525d6f7b332deb7f2 dotnetLibs=libc6 libgcc-s1 libicu74 liblttng-ust1 libssl3 libstdc++6 zlib1g gitLinuxComponentVersion=1:2.53.0-0ppa1~ubuntu24.04.1 gitLFSLinuxComponentVersion=v3.7.1 dockerLinuxComponentVersion=5:28.5.1-1~ubuntu containerdIoLinuxComponentVersion=1.7.28-1~ubuntu.24.04~noble p4Version=r25.1 gitLinuxComponentVersion=1:2.53.0-0ppa1~ubuntu24.04.1 /bin/sh -c apt-get update && apt-get install -y mercurial apt-transport-https software-properties-common && add-apt-repository ppa:git-core/ppa -y && apt-get install -y git=${gitLinuxComponentVersion} && curl -Lo /usr/local/bin/p4 "https://www.perforce.com/downloads/perforce/${p4Version}/bin.linux26x86_64/p4" && chmod +x /usr/local/bin/p4 && p4 -V && apt-get clean && rm -rf /var/lib/apt/lists/* && curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - && add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" && apt-cache policy docker-ce && apt-get update && apt-get install -y docker-ce=${dockerLinuxComponentVersion}.$(lsb_release -rs)~$(lsb_release -cs) docker-ce-cli=${dockerLinuxComponentVersion}.$(lsb_release -rs)~$(lsb_release -cs) containerd.io:amd64=${containerdIoLinuxComponentVersion} systemd && systemctl disable docker && sed -i -e 's/\r$//' /services/run-docker.sh && apt-get install -y --no-install-recommends ${dotnetLibs} && apt-get clean && rm -rf /var/lib/apt/lists/* && mkdir -p /usr/share/dotnet && curl -SL ${dotnetLinuxComponent} --output /tmp/dotnet.tar.gz && echo "Downloaded .NET 8.0 (Linux AMD64) checksum: $(sha512sum tmp/dotnet.tar.gz)" && echo "${dotnetLinuxComponentSHA512} */tmp/dotnet.tar.gz" | sha512sum -c -; tar -zxf /tmp/dotnet.tar.gz -C /usr/share/dotnet && rm /tmp/dotnet.tar.gz && find /usr/share/dotnet -name "*.lzma" -type f -delete && ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet && dotnet help && dotnet --info && apt-get clean && rm -rf /var/lib/apt/lists/* && chown -R buildagent:buildagent /services && usermod -aG docker buildagent && [ -f /etc/gitconfig ] || (echo "'/etc/gitconfig' does not exist, while LFS filter is required" && exit 1) # buildkit |
| VOLUME [/var/lib/docker] |
| USER buildagent |
| USER root |
| RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends sudo && apt-get clean && rm -rf /var/lib/apt/lists/* && echo 'buildagent ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers && rm -rf /var/lib/apt/lists/* # buildkit |
| USER buildagent |
| USER root |
| SHELL [/bin/bash -o pipefail -c] |
| ARG DOTNET_SDK_VERSION=10.0.400 |
| ARG DOTNET_WORKLOAD_VERSION=10.0.400.1 |
| ARG ANDROID_PLATFORM=36 |
| ARG ANDROID_BUILD_TOOLS=36.0.0 |
| ARG ANDROID_CMDLINE_TOOLS_VERSION=13114758 |
| ARG NODE_VERSION=22.18.0 |
| ARG FIREBASE_TOOLS_VERSION=14.15.2 |
| ARG KUBECTL_VERSION=v1.34.1 |
| ARG KUSTOMIZE_VERSION=v5.8.1 |
| ARG SYFT_VERSION=v1.30.0 |
| ARG GRYPE_VERSION=v0.100.0 |
| ARG QODANA_VERSION=2026.2.0 |
| ARG QODANA_LINUX_AMD64_SHA256=2a557200f94510f285a9f877027a3835374038a289508fd58be92af4943c9ff1 |
| ARG QODANA_LINUX_ARM64_SHA256=529ed67b808fdc9cf69b69386cc8dbb2993282a7aec630470724c9ee9449fe24 |
| ENV ANDROID_SDK_ROOT=/opt/android-sdk ANDROID_HOME=/opt/android-sdk DOTNET_CLI_TELEMETRY_OPTOUT=1 DOTNET_NOLOGO=1 FIREBASE_CLI=true KUBECTL_VERSION=v1.34.1 KUSTOMIZE_VERSION=v5.8.1 SYFT_VERSION=v1.30.0 GRYPE_VERSION=v0.100.0 QODANA_VERSION=2026.2.0 PATH=/opt/android-sdk/cmdline-tools/latest/bin:/opt/android-sdk/platform-tools:/opt/android-sdk/build-tools/36.0.0:/opt/node/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| RUN |14 DOTNET_SDK_VERSION=10.0.400 DOTNET_WORKLOAD_VERSION=10.0.400.1 ANDROID_PLATFORM=36 ANDROID_BUILD_TOOLS=36.0.0 ANDROID_CMDLINE_TOOLS_VERSION=13114758 NODE_VERSION=22.18.0 FIREBASE_TOOLS_VERSION=14.15.2 KUBECTL_VERSION=v1.34.1 KUSTOMIZE_VERSION=v5.8.1 SYFT_VERSION=v1.30.0 GRYPE_VERSION=v0.100.0 QODANA_VERSION=2026.2.0 QODANA_LINUX_AMD64_SHA256=2a557200f94510f285a9f877027a3835374038a289508fd58be92af4943c9ff1 QODANA_LINUX_ARM64_SHA256=529ed67b808fdc9cf69b69386cc8dbb2993282a7aec630470724c9ee9449fe24 /bin/bash -o pipefail -c apt-get update && apt-get install -y --no-install-recommends ca-certificates curl git jq openjdk-17-jdk python3-yaml unzip xz-utils zip && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN |14 DOTNET_SDK_VERSION=10.0.400 DOTNET_WORKLOAD_VERSION=10.0.400.1 ANDROID_PLATFORM=36 ANDROID_BUILD_TOOLS=36.0.0 ANDROID_CMDLINE_TOOLS_VERSION=13114758 NODE_VERSION=22.18.0 FIREBASE_TOOLS_VERSION=14.15.2 KUBECTL_VERSION=v1.34.1 KUSTOMIZE_VERSION=v5.8.1 SYFT_VERSION=v1.30.0 GRYPE_VERSION=v0.100.0 QODANA_VERSION=2026.2.0 QODANA_LINUX_AMD64_SHA256=2a557200f94510f285a9f877027a3835374038a289508fd58be92af4943c9ff1 QODANA_LINUX_ARM64_SHA256=529ed67b808fdc9cf69b69386cc8dbb2993282a7aec630470724c9ee9449fe24 /bin/bash -o pipefail -c curl -fsSL https://dot.net/v1/dotnet-install.sh -o /tmp/dotnet-install.sh && bash /tmp/dotnet-install.sh --version "${DOTNET_SDK_VERSION}" --install-dir /usr/share/dotnet && ln -sf /usr/share/dotnet/dotnet /usr/local/bin/dotnet && rm /tmp/dotnet-install.sh && dotnet --list-sdks # buildkit |
| RUN |14 DOTNET_SDK_VERSION=10.0.400 DOTNET_WORKLOAD_VERSION=10.0.400.1 ANDROID_PLATFORM=36 ANDROID_BUILD_TOOLS=36.0.0 ANDROID_CMDLINE_TOOLS_VERSION=13114758 NODE_VERSION=22.18.0 FIREBASE_TOOLS_VERSION=14.15.2 KUBECTL_VERSION=v1.34.1 KUSTOMIZE_VERSION=v5.8.1 SYFT_VERSION=v1.30.0 GRYPE_VERSION=v0.100.0 QODANA_VERSION=2026.2.0 QODANA_LINUX_AMD64_SHA256=2a557200f94510f285a9f877027a3835374038a289508fd58be92af4943c9ff1 QODANA_LINUX_ARM64_SHA256=529ed67b808fdc9cf69b69386cc8dbb2993282a7aec630470724c9ee9449fe24 /bin/bash -o pipefail -c mkdir -p "${ANDROID_SDK_ROOT}/cmdline-tools" && curl -fsSL "https://dl.google.com/android/repository/commandlinetools-linux-${ANDROID_CMDLINE_TOOLS_VERSION}_latest.zip" -o /tmp/android-tools.zip && unzip -q /tmp/android-tools.zip -d "${ANDROID_SDK_ROOT}/cmdline-tools" && mv "${ANDROID_SDK_ROOT}/cmdline-tools/cmdline-tools" "${ANDROID_SDK_ROOT}/cmdline-tools/latest" && rm /tmp/android-tools.zip && (yes | sdkmanager --licenses >/dev/null || true) && sdkmanager "platform-tools" "platforms;android-${ANDROID_PLATFORM}" "build-tools;${ANDROID_BUILD_TOOLS}" && dotnet workload install maui-android --version "${DOTNET_WORKLOAD_VERSION}" && dotnet workload --version | grep -Fx "${DOTNET_WORKLOAD_VERSION}" && dotnet workload list | grep -q 'maui-android' # buildkit |
| RUN |14 DOTNET_SDK_VERSION=10.0.400 DOTNET_WORKLOAD_VERSION=10.0.400.1 ANDROID_PLATFORM=36 ANDROID_BUILD_TOOLS=36.0.0 ANDROID_CMDLINE_TOOLS_VERSION=13114758 NODE_VERSION=22.18.0 FIREBASE_TOOLS_VERSION=14.15.2 KUBECTL_VERSION=v1.34.1 KUSTOMIZE_VERSION=v5.8.1 SYFT_VERSION=v1.30.0 GRYPE_VERSION=v0.100.0 QODANA_VERSION=2026.2.0 QODANA_LINUX_AMD64_SHA256=2a557200f94510f285a9f877027a3835374038a289508fd58be92af4943c9ff1 QODANA_LINUX_ARM64_SHA256=529ed67b808fdc9cf69b69386cc8dbb2993282a7aec630470724c9ee9449fe24 /bin/bash -o pipefail -c arch="$(uname -m)" && case "$arch" in x86_64) node_arch=x64 ;; aarch64) node_arch=arm64 ;; *) exit 1 ;; esac && mkdir -p /opt/node && curl -fsSL "https://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-${node_arch}.tar.xz" | tar -xJ --strip-components=1 -C /opt/node && npm install --global "firebase-tools@${FIREBASE_TOOLS_VERSION}" && test "$(node --version)" = "v${NODE_VERSION}" && test "$(firebase --version)" = "${FIREBASE_TOOLS_VERSION}" # buildkit |
| RUN |14 DOTNET_SDK_VERSION=10.0.400 DOTNET_WORKLOAD_VERSION=10.0.400.1 ANDROID_PLATFORM=36 ANDROID_BUILD_TOOLS=36.0.0 ANDROID_CMDLINE_TOOLS_VERSION=13114758 NODE_VERSION=22.18.0 FIREBASE_TOOLS_VERSION=14.15.2 KUBECTL_VERSION=v1.34.1 KUSTOMIZE_VERSION=v5.8.1 SYFT_VERSION=v1.30.0 GRYPE_VERSION=v0.100.0 QODANA_VERSION=2026.2.0 QODANA_LINUX_AMD64_SHA256=2a557200f94510f285a9f877027a3835374038a289508fd58be92af4943c9ff1 QODANA_LINUX_ARM64_SHA256=529ed67b808fdc9cf69b69386cc8dbb2993282a7aec630470724c9ee9449fe24 /bin/bash -o pipefail -c arch="$(uname -m)" && case "$arch" in x86_64) kube_arch=amd64 ;; aarch64) kube_arch=arm64 ;; *) exit 1 ;; esac && curl -fsSL "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/${kube_arch}/kubectl" -o /usr/local/bin/kubectl && chmod +x /usr/local/bin/kubectl && curl -fsSL "https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/${KUSTOMIZE_VERSION}/kustomize_${KUSTOMIZE_VERSION}_linux_${kube_arch}.tar.gz" | tar -xz -C /usr/local/bin kustomize && curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh -s -- -b /usr/local/bin "${SYFT_VERSION}" && curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/bin "${GRYPE_VERSION}" && kubectl version --client && kustomize version && syft version && grype version # buildkit |
| RUN |14 DOTNET_SDK_VERSION=10.0.400 DOTNET_WORKLOAD_VERSION=10.0.400.1 ANDROID_PLATFORM=36 ANDROID_BUILD_TOOLS=36.0.0 ANDROID_CMDLINE_TOOLS_VERSION=13114758 NODE_VERSION=22.18.0 FIREBASE_TOOLS_VERSION=14.15.2 KUBECTL_VERSION=v1.34.1 KUSTOMIZE_VERSION=v5.8.1 SYFT_VERSION=v1.30.0 GRYPE_VERSION=v0.100.0 QODANA_VERSION=2026.2.0 QODANA_LINUX_AMD64_SHA256=2a557200f94510f285a9f877027a3835374038a289508fd58be92af4943c9ff1 QODANA_LINUX_ARM64_SHA256=529ed67b808fdc9cf69b69386cc8dbb2993282a7aec630470724c9ee9449fe24 /bin/bash -o pipefail -c arch="$(uname -m)" && case "$arch" in x86_64) qodana_arch=x86_64; qodana_sha256="${QODANA_LINUX_AMD64_SHA256}" ;; aarch64) qodana_arch=arm64; qodana_sha256="${QODANA_LINUX_ARM64_SHA256}" ;; *) echo "Unsupported Qodana architecture: $arch" >&2; exit 1 ;; esac && qodana_url="https://github.com/JetBrains/qodana-cli/releases/download/v${QODANA_VERSION}/qodana_linux_${qodana_arch}" && curl -fsSL "$qodana_url" -o /usr/local/bin/qodana && printf '%s %s\n' "$qodana_sha256" /usr/local/bin/qodana | sha256sum --check --strict - && chmod 0755 /usr/local/bin/qodana && qodana --version 2>&1 | grep -Fq "${QODANA_VERSION}" # buildkit |
| USER buildagent |
Labels
| Key | Value |
|---|---|
| org.opencontainers.image.ref.name | ubuntu |
| org.opencontainers.image.revision | 8e36b7cbcf45c733ec7be71bb73c3e16dbf1f633 |
| org.opencontainers.image.source | https://codeberg.org/Moebiusol/moe-workload.git |
| org.opencontainers.image.version | 24.04 |
Details
Versions (5)
View all