Skip to content

Commit 9bef536

Browse files
author
Pol Canelles
committed
Reduce docker image size
The final docker image size is reduced about 2GB by cleaning up the apt files and removing unneeded compressed files.
1 parent 37dc89f commit 9bef536

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

Dockerfile

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,21 +36,24 @@ ENV ANDROID_NDK_DL_URL="https://dl.google.com/android/repository/${ANDROID_NDK_A
3636

3737
# install system dependencies
3838
RUN apt update -qq && apt install -qq --yes --no-install-recommends \
39-
python virtualenv python-pip wget curl lbzip2 patch bsdtar
39+
python virtualenv python-pip wget curl lbzip2 patch bsdtar && \
40+
rm -rf /var/lib/apt/lists/*
4041

4142
# build dependencies
4243
# https://buildozer.readthedocs.io/en/latest/installation.html#android-on-ubuntu-16-04-64bit
4344
RUN dpkg --add-architecture i386 && apt update -qq && apt install -qq --yes --no-install-recommends \
4445
build-essential ccache git libncurses5:i386 libstdc++6:i386 libgtk2.0-0:i386 \
4546
libpangox-1.0-0:i386 libpangoxft-1.0-0:i386 libidn11:i386 python2.7 python2.7-dev \
46-
openjdk-8-jdk unzip zlib1g-dev zlib1g:i386
47+
openjdk-8-jdk unzip zlib1g-dev zlib1g:i386 && \
48+
rm -rf /var/lib/apt/lists/*
4749
RUN pip install --quiet --upgrade cython==0.21
4850

4951
# download and install Android NDK
5052
RUN curl --location --progress-bar "${ANDROID_NDK_DL_URL}" --output "${ANDROID_NDK_ARCHIVE}" && \
5153
mkdir --parents "${ANDROID_NDK_HOME_V}" && \
5254
unzip -q "${ANDROID_NDK_ARCHIVE}" -d "${ANDROID_HOME}" && \
53-
ln -sfn "${ANDROID_NDK_HOME_V}" "${ANDROID_NDK_HOME}"
55+
ln -sfn "${ANDROID_NDK_HOME_V}" "${ANDROID_NDK_HOME}" && \
56+
rm -rf "${ANDROID_NDK_ARCHIVE}"
5457

5558
# download and install CrystaX NDK
5659
# added `gnutls_handshake` flag to workaround random `gnutls_handshake()` issues
@@ -64,12 +67,14 @@ RUN curl --location --progress-bar "${CRYSTAX_NDK_DL_URL}" --output "${CRYSTAX_N
6467
--exclude=crystax-ndk-${CRYSTAX_NDK_VERSION}/toolchains/llvm-* \
6568
--exclude=crystax-ndk-${CRYSTAX_NDK_VERSION}/toolchains/aarch64-* \
6669
--exclude=crystax-ndk-${CRYSTAX_NDK_VERSION}/toolchains/mips64el-* && \
67-
ln -sfn "${CRYSTAX_NDK_HOME_V}" "${CRYSTAX_NDK_HOME}"
70+
ln -sfn "${CRYSTAX_NDK_HOME_V}" "${CRYSTAX_NDK_HOME}" && \
71+
rm -rf "${CRYSTAX_NDK_ARCHIVE}"
6872

6973
# download and install Android SDK
7074
RUN curl --location --progress-bar "${ANDROID_SDK_TOOLS_DL_URL}" --output "${ANDROID_SDK_TOOLS_ARCHIVE}" && \
7175
mkdir --parents "${ANDROID_SDK_HOME}" && \
72-
unzip -q "${ANDROID_SDK_TOOLS_ARCHIVE}" -d "${ANDROID_SDK_HOME}"
76+
unzip -q "${ANDROID_SDK_TOOLS_ARCHIVE}" -d "${ANDROID_SDK_HOME}" && \
77+
rm -rf "${ANDROID_SDK_TOOLS_ARCHIVE}"
7378

7479
# update Android SDK, install Android API, Build Tools...
7580
RUN mkdir --parents "${ANDROID_SDK_HOME}/.android/" && \

0 commit comments

Comments
 (0)