47 lines
1.5 KiB
Docker
47 lines
1.5 KiB
Docker
FROM docker.io/debian:12-slim AS build
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
ca-certificates \
|
|
curl \
|
|
sdkmanager \
|
|
xz-utils \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
# https://docs.flutter.dev/release/archive
|
|
RUN curl https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.27.3-stable.tar.xz \
|
|
| tar --no-same-owner -C /opt/ -xJ
|
|
# https://developer.android.com/tools/releases/build-tools
|
|
RUN sdkmanager \
|
|
"build-tools;33.0.1" \
|
|
"build-tools;34.0.0" \
|
|
"cmdline-tools;9.0" \
|
|
"platform-tools" \
|
|
"platforms;android-33" \
|
|
"platforms;android-34" \
|
|
"platforms;android-35"
|
|
# https://gradle.org/releases/
|
|
RUN curl -Lo /gradle.zip \
|
|
'https://services.gradle.org/distributions/gradle-8.12.1-bin.zip'
|
|
|
|
FROM docker.io/debian:12-slim
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
RUN touch /.dockerenv
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
curl \
|
|
git \
|
|
openjdk-17-jdk-headless \
|
|
unzip \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
COPY --from=build /opt/ /opt/
|
|
ENV GRADLE_ZIP=/gradle.zip
|
|
COPY --from=build /gradle.zip "$GRADLE_ZIP"
|
|
ENV PATH="/opt/flutter/bin:$PATH"
|
|
RUN flutter config --android-sdk /opt/android-sdk/
|
|
RUN flutter precache --android
|
|
RUN yes | flutter doctor --android-licenses
|
|
COPY entrypoint.sh /usr/local/bin/
|
|
WORKDIR /app/
|
|
ENTRYPOINT ["entrypoint.sh"]
|
|
CMD ["build", "apk"]
|