Files
12z-app/Dockerfile.android
2026-04-18 10:09:22 +08:00

46 lines
1.3 KiB
Docker

FROM ubuntu:22.04
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
openjdk-17-jdk \
wget \
unzip \
curl \
python3 \
git \
&& rm -rf /var/lib/apt/lists/*
# Install Node.js 20
RUN curl -fsSL https://deb.nodesource.com/setup_20.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 sync android
WORKDIR /workspace/android
RUN chmod +x gradlew
RUN ./gradlew assembleDebug --no-daemon