Davit Ebralidze
Davit Ebralidze

Reputation: 63

Cannot isntall SDK packages on my linux system from docker

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

Answers (0)

Related Questions