All checks were successful
Build and Push Flutter SDK Image / build-and-push (Flutter SDK for Linux desktop CI builds, Dockerfile.linux, linux) (release) Successful in 26m24s
Build and Push Flutter SDK Image / build-and-push (Flutter SDK for Android CI builds, Dockerfile.android, android) (release) Successful in 31m44s
Build and Push Flutter SDK Image / build-and-push (Minimal Flutter SDK for Web/WASM CI builds, Dockerfile, web) (release) Successful in 16m45s
Switch from downloading pre-built Flutter SDK tarballs to cloning from git. Flutter only provides x64 Linux tarballs, but cloning from git allows Flutter to bootstrap itself with the correct Dart SDK for any host architecture (amd64 or arm64). Also reduces image size from ~4GB to ~1.7GB for Android variant. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
41 lines
1.1 KiB
Docker
41 lines
1.1 KiB
Docker
FROM svrnty/base-distro:flutter-sdk-latest
|
|
|
|
ARG FLUTTER_VERSION=3.38.9
|
|
|
|
LABEL org.opencontainers.image.title="flutter-sdk-web"
|
|
LABEL org.opencontainers.image.description="Minimal Flutter SDK for Web/WASM CI builds"
|
|
LABEL org.opencontainers.image.version="${FLUTTER_VERSION}"
|
|
|
|
USER 0
|
|
|
|
# Clone Flutter SDK from git (supports both amd64 and arm64)
|
|
RUN git clone --depth 1 --branch ${FLUTTER_VERSION} https://github.com/flutter/flutter.git /opt/flutter && \
|
|
git config --global --add safe.directory /opt/flutter && \
|
|
rm -rf /opt/flutter/dev /opt/flutter/examples && \
|
|
chown -R 65532:65532 /opt/flutter
|
|
|
|
USER 65532
|
|
|
|
# Configure for web-only (disable everything else)
|
|
RUN flutter config --enable-web \
|
|
--no-enable-android \
|
|
--no-enable-ios \
|
|
--no-enable-linux-desktop \
|
|
--no-enable-macos-desktop \
|
|
--no-enable-windows-desktop
|
|
|
|
# Precache only web artifacts
|
|
RUN flutter precache --web \
|
|
--no-android \
|
|
--no-ios \
|
|
--no-linux \
|
|
--no-macos \
|
|
--no-windows \
|
|
--no-fuchsia \
|
|
--no-universal
|
|
|
|
# Verify installation
|
|
RUN flutter doctor -v
|
|
|
|
WORKDIR /app
|