1
0
Fork 0

Refactor, run as root instead

master
Ambrose Chua 2017-10-19 23:25:47 +08:00
parent 4f41e1b9e5
commit d5e877ed41
1 changed files with 10 additions and 33 deletions

View File

@ -2,12 +2,12 @@
FROM ubuntu:16.04
# Never ask for confirmations
ENV DEBIAN_FRONTEND noninteractive
# SDK version
ENV ANDROID_SDK_VERSION 3859397
# Never ask for confirmations
ENV DEBIAN_FRONTEND noninteractive
# Update apt-get
RUN apt-get -qq update \
&& apt-get -qq install -y --no-install-recommends \
@ -29,15 +29,15 @@ RUN wget https://dl.google.com/android/repository/sdk-tools-linux-$ANDROID_SDK_V
&& unzip -q sdk-tools-linux-$ANDROID_SDK_VERSION.zip -d /usr/local/android \
&& rm sdk-tools-linux-$ANDROID_SDK_VERSION.zip
# Export JAVA_HOME variable
ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64
# Environment variables
ENV ANDROID_HOME /usr/local/android
ENV ANDROID_SDK_HOME $ANDROID_HOME
ENV ANDROID_NDK_HOME $ANDROID_HOME/ndk-bundle
ENV PATH $ANDROID_HOME/tools/bin:$PATH
# Export JAVA_HOME variable
ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64
# Install Android SDK components
RUN echo "y" | sdkmanager \
# "ndk-bundle" \
@ -47,34 +47,11 @@ RUN echo "y" | sdkmanager \
"platforms;android-26" \
"build-tools;26.0.2"
# Build directory
ENV SRC /src
RUN mkdir $SRC
WORKDIR $SRC
# Support Gradle
ENV TERM dumb
ENV JAVA_OPTS "-Xms512m -Xmx1024m"
ENV GRADLE_OPTS "-XX:+UseG1GC -XX:MaxGCPauseMillis=1000"
# Add build user account, values are set to default below
ENV RUN_USER builder
ENV RUN_UID 5000
RUN id $RUN_USER || adduser --uid "$RUN_UID" \
--gecos 'Build User' \
--shell '/bin/sh' \
--disabled-login \
--disabled-password "$RUN_USER"
# Fix permissions
RUN chown -R $RUN_USER:$RUN_USER $ANDROID_HOME
RUN chmod -R a+rx $ANDROID_HOME
# Creating project directories prepared for build when running
# `docker run`
ENV PROJECT /project
RUN mkdir $PROJECT
RUN chown -R $RUN_USER:$RUN_USER $PROJECT
WORKDIR $PROJECT
USER $RUN_USER
RUN echo "sdk.dir=$ANDROID_HOME" > local.properties
CMD ["./gradlew", "build"]