flutter-android-ci (latest)

Published 2025-10-21 19:22:41 +02:00 by alexandrump

Installation

docker pull git.thax.es/alexandrump/flutter-android-ci:latest
sha256:45f291e00b48454db5a61ba15ca32cc2d802d3d7159cd97db308b093401c66f0

About this package

Android NDK OCI image including CMake based on Alpine Linux

Image Layers

ARG RELEASE
ARG LAUNCHPAD_BUILD_ARCH
LABEL org.opencontainers.image.ref.name=ubuntu
LABEL org.opencontainers.image.version=24.04
ADD file:6df775300d76441aa33f31b22c1afce8dfe35c8ffbc14ef27c27009235b12a95 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 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-23.0.2+7
RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='870ac8c05c6fe563e7a3878a47d0234b83c050e83651d2c47e8b822ec74512dd'; BINARY_URL='https://github.com/adoptium/temurin23-binaries/releases/download/jdk-23.0.2%2B7/OpenJDK23U-jdk_x64_linux_hotspot_23.0.2_7.tar.gz'; ;; arm64) ESUM='fb43ae1202402842559cb6223886ec1663b90ffbec48479abbcb92c92c9012eb'; BINARY_URL='https://github.com/adoptium/temurin23-binaries/releases/download/jdk-23.0.2%2B7/OpenJDK23U-jdk_aarch64_linux_hotspot_23.0.2_7.tar.gz'; ;; ppc64el) ESUM='548fd82af4eb0802fe20b0b61a4664a69c7f03cd963540908f30dbf73636dafe'; BINARY_URL='https://github.com/adoptium/temurin23-binaries/releases/download/jdk-23.0.2%2B7/OpenJDK23U-jdk_ppc64le_linux_hotspot_23.0.2_7.tar.gz'; ;; riscv64) ESUM='1e102e1e6653f8810ef6c275b0d38ea7036abd4a8709f0f916b339f65e76bb56'; BINARY_URL='https://github.com/adoptium/temurin23-binaries/releases/download/jdk-23.0.2%2B7/OpenJDK23U-jdk_riscv64_linux_hotspot_23.0.2_7.tar.gz'; ;; s390x) ESUM='591ccf4d27016315700cc9cc979f7cf343900b6bee1b0b45c93f2c5f946e5aac'; BINARY_URL='https://github.com/adoptium/temurin23-binaries/releases/download/jdk-23.0.2%2B7/OpenJDK23U-jdk_s390x_linux_hotspot_23.0.2_7.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"]
ARG android=35
ARG jdk=23.0.2_7
LABEL maintainer=Sascha Peilicke <sascha@peilicke.de
LABEL description=Android SDK 35 using JDK 23.0.2_7
ENV ANDROID_SDK_ROOT=/opt/android-sdk-linux
ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/android-sdk-linux/cmdline-tools/latest/bin:/opt/android-sdk-linux/platform-tools:/opt/android-sdk-linux/emulator
RUN |2 android=35 jdk=23.0.2_7 /bin/sh -c apt-get update && apt-get install -y --no-install-recommends curl git git-lfs gnupg openssl unzip # buildkit
RUN |2 android=35 jdk=23.0.2_7 /bin/sh -c curl -s https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip -o /tmp/tools.zip && unzip -q /tmp/tools.zip -d /tmp && yes | /tmp/cmdline-tools/bin/sdkmanager --sdk_root="${ANDROID_SDK_ROOT}" --licenses && /tmp/cmdline-tools/bin/sdkmanager --sdk_root="${ANDROID_SDK_ROOT}" --install "cmdline-tools;latest" && rm -r /tmp/tools.zip /tmp/cmdline-tools # buildkit
RUN |2 android=35 jdk=23.0.2_7 /bin/sh -c adduser nonroot && chown nonroot:nonroot -R "${ANDROID_SDK_ROOT}" # buildkit
USER nonroot
RUN |2 android=35 jdk=23.0.2_7 /bin/sh -c mkdir -p /home/nonroot/.android/ && touch /home/nonroot/.android/repositories.cfg # buildkit
RUN |2 android=35 jdk=23.0.2_7 /bin/sh -c yes | sdkmanager --licenses >/dev/null && sdkmanager --install "platforms;android-${android}" "platform-tools" # buildkit
ARG android=35
ARG cmake=3.31.5
ARG jdk=23.0.2_7
ARG ndk=28.0.13004108
LABEL maintainer=Sascha Peilicke <sascha@peilicke.de
LABEL description=Android NDK 28.0.13004108 with CMake 3.31.5 on SDK 35 using JDK 23.0.2_7
USER nonroot
ENV NDK_ROOT=/opt/android-sdk-linux/ndk/28.0.13004108
RUN |4 android=35 cmake=3.31.5 jdk=23.0.2_7 ndk=28.0.13004108 /bin/sh -c sdkmanager --install "cmake;${cmake}" "ndk;${ndk}" # buildkit
LABEL maintainer=Alejandro Martínez Peregrina <alex@thax.es>
LABEL description=Imagen optimizada para Traelo (Flutter + Android SDK + NDK + CMake)
ENV FLUTTER_VERSION=3.24.4 FLUTTER_HOME=/opt/flutter PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/android-sdk-linux/cmdline-tools/latest/bin:/opt/android-sdk-linux/platform-tools:/opt/android-sdk-linux/emulator:/opt/flutter/bin:/opt/flutter/bin/cache/dart-sdk/bin
USER root
RUN /bin/sh -c apt-get update && apt-get install -y curl git unzip xz-utils zip libglu1-mesa && rm -rf /var/lib/apt/lists/* # buildkit
RUN /bin/sh -c git clone https://github.com/flutter/flutter.git -b stable ${FLUTTER_HOME} && flutter doctor -v && yes | flutter doctor --android-licenses # buildkit
RUN /bin/sh -c flutter precache --android --no-ios --no-linux --no-windows --no-macos && flutter pub cache repair # buildkit
WORKDIR /app
RUN /bin/sh -c flutter --version && echo "✅ Imagen lista: Flutter 3.24 + Android SDK + NDK + CMake" # buildkit
ENTRYPOINT ["/bin/bash"]

Labels

Key Value
description Imagen optimizada para Traelo (Flutter + Android SDK + NDK + CMake)
maintainer Alejandro Martínez Peregrina <alex@thax.es>
org.opencontainers.image.created 2025-03-03T13:56:27.511Z
org.opencontainers.image.description Android NDK OCI image including CMake based on Alpine Linux
org.opencontainers.image.licenses Apache-2.0
org.opencontainers.image.ref.name ubuntu
org.opencontainers.image.revision 406829a03b0ef7ece8a290285b74cd0d4c309096
org.opencontainers.image.source https://github.com/saschpe/docker-android-ndk
org.opencontainers.image.title docker-android-ndk
org.opencontainers.image.url https://github.com/saschpe/docker-android-ndk
org.opencontainers.image.version 35-jdk23.0.2_7-ndk28.0.13004108-cmake3.31.5
Details
Container
2025-10-21 19:22:41 +02:00
2
OCI / Docker
linux/amd64
Apache-2.0
2.7 GiB
Versions (1) View all
latest 2025-10-21