FROM node:18 # Install Java and required tools RUN apt-get update && apt-get install -y \ openjdk-17-jdk-headless \ wget \ unzip \ git \ && rm -rf /var/lib/apt/lists/* # Set Java environment ENV JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 ENV PATH=$JAVA_HOME/bin:$PATH # Install Android command-line tools RUN mkdir -p /android-sdk/cmdline-tools && \ cd /android-sdk/cmdline-tools && \ wget -q https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip && \ unzip -q commandlinetools-linux-11076708_latest.zip && \ rm commandlinetools-linux-11076708_latest.zip && \ mv cmdline-tools latest # Set Android SDK environment ENV ANDROID_SDK_ROOT=/android-sdk ENV PATH=$ANDROID_SDK_ROOT/cmdline-tools/latest/bin:$PATH ENV PATH=$ANDROID_SDK_ROOT/platform-tools:$PATH # Accept Android SDK licenses RUN yes | sdkmanager --licenses || true # Install required Android SDK components RUN sdkmanager "platform-tools" "platforms;android-33" "build-tools;33.0.2" # Install Bubblewrap globally RUN npm install -g @bubblewrap/cli WORKDIR /app # Copy build configuration COPY build-apk.sh /app/ RUN chmod +x /app/build-apk.sh ENTRYPOINT ["/app/build-apk.sh"]