Reputation: 63
This is my docker file (I'm building my image from Mac with M1 chip):
FROM ubuntu:latest
RUN apt update && \
apt install -y openjdk-21-jdk wget unzip libxrender1 libxtst6 libxi6 && \
apt clean
ENV JAVA_HOME=/usr/lib/jvm/java-21-openjdk-arm64
ENV PATH="$JAVA_HOME/bin:$PATH"
RUN wget https://dl.google.com/dl/android/studio/ide-zips/2024.2.2.14/android-studio-2024.2.2.14-linux.tar.gz -O /tmp/android-studio.tar.gz && \
mkdir -p /opt/android-studio && \
tar -xzf /tmp/android-studio.tar.gz -C /opt/android-studio --strip-components=1 && \
rm /tmp/android-studio.tar.gz
RUN wget https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip -O /tmp/commandlinetools-linux.zip && \
mkdir -p /opt/android-sdk/cmdline-tools && \
unzip /tmp/commandlinetools-linux.zip -d /opt/android-sdk/cmdline-tools && \
mv /opt/android-sdk/cmdline-tools/cmdline-tools /opt/android-sdk/cmdline-tools/latest && \
rm /tmp/commandlinetools-linux.zip
RUN yes | /opt/android-sdk/cmdline-tools/latest/bin/sdkmanager --sdk_root=/opt/android-sdk --licenses && \
/opt/android-sdk/cmdline-tools/latest/bin/sdkmanager --sdk_root=/opt/android-sdk \
"platform-tools" "build-tools;33.0.0" "platforms;android-33" "system-images;android-33;google_apis;arm64-v8a"
ENV ANDROID_SDK_ROOT=/opt/android-sdk
ENV ANDROID_STUDIO_HOME=/opt/android-studio
ENV PATH="$ANDROID_SDK_ROOT/platform-tools:$ANDROID_SDK_ROOT/cmdline-tools/latest/bin:$ANDROID_SDK_ROOT/emulator:$ANDROID_STUDIO_HOME/bin:$PATH"
RUN mkdir /app
WORKDIR /app
COPY . .
The error I receive states:
--------------------
24 |
25 | >>> RUN yes | /opt/android-sdk/cmdline-tools/latest/bin/sdkmanager --sdk_root=/opt/android-sdk --licenses && \
26 | >>> /opt/android-sdk/cmdline-tools/latest/bin/sdkmanager --sdk_root=/opt/android-sdk \
27 | >>> "platform-tools" "build-tools;33.0.0" "platforms;android-33" "system-images;android-33;google_apis;arm64-v8a "
28 |
--------------------
ERROR: failed to solve: process "/bin/sh -c yes | /opt/android-sdk/cmdline-tools/latest/bin/sdkmanager --sdk_root=/opt/android-sdk --licenses && /opt/android-sdk/cmdline-tools/latest/bin/sdkmanager --sdk_root=/opt/android-sdk \"platform-tools\" \"build-tools;33.0.0\" \"platforms;android-33\" \"system-images;android-33;google_apis;arm64-v8a \"" did not complete successfully: exit code: 1
The interesting thing is that all this works when I build an image from my windows device (I just change the java home path and android package version)
Upvotes: 0
Views: 15