FROM ubuntu:22.04 ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update && apt-get install -y \ openjdk-21-jdk \ wget \ unzip \ curl \ python3 \ git \ && rm -rf /var/lib/apt/lists/* # Install Node.js 22 RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && \ apt-get install -y nodejs && \ rm -rf /var/lib/apt/lists/* # Setup Android SDK ENV ANDROID_SDK_ROOT=/opt/android-sdk ENV ANDROID_HOME=/opt/android-sdk ENV PATH=$PATH:$ANDROID_SDK_ROOT/cmdline-tools/latest/bin:$ANDROID_SDK_ROOT/platform-tools RUN mkdir -p $ANDROID_SDK_ROOT/cmdline-tools RUN cd /tmp && \ wget -q "https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip" -O cmdline-tools.zip && \ unzip -q cmdline-tools.zip && \ mv cmdline-tools $ANDROID_SDK_ROOT/cmdline-tools/latest && \ rm cmdline-tools.zip RUN yes | $ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager --licenses 2>/dev/null || true RUN $ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager \ "platform-tools" "platforms;android-34" "build-tools;34.0.0" WORKDIR /workspace COPY package*.json ./ RUN npm install COPY . . RUN npm run build && npx cap add android && npx cap sync android WORKDIR /workspace/android RUN chmod +x gradlew RUN ./gradlew assembleDebug --no-daemon