You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.2 KiB
43 lines
1.2 KiB
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"]
|