49bcb07e4a3a2131ddf70f48922e87947cb8df52
[termux-packages] / scripts / Dockerfile
1 # Build with:
2 # docker build -t termux/package-builder .
3 # Push to docker hub with:
4 # docker push termux/package-builder
5 # This is done after changing this file or any of the
6 # scripts/setup-{ubuntu,android-sdk}.sh setup scripts.
7 FROM ubuntu:17.10
8
9 # Fix locale to avoid warnings:
10 ENV LANG C.UTF-8
11
12 # Needed for setup:
13 COPY ./setup-ubuntu.sh /tmp/setup-ubuntu.sh
14 COPY ./setup-android-sdk.sh /tmp/setup-android-sdk.sh
15
16 # Setup needed packages and the Android SDK and NDK:
17 RUN apt-get update && \
18 apt-get -yq upgrade && \
19 apt-get install -yq sudo && \
20 adduser --disabled-password --shell /bin/bash --gecos "" builder && \
21 echo "builder ALL=(root) NOPASSWD:ALL" > /etc/sudoers.d/builder && \
22 chmod 0440 /etc/sudoers.d/builder && \
23 su - builder -c /tmp/setup-ubuntu.sh && \
24 su - builder -c /tmp/setup-android-sdk.sh && \
25 # Removed unused parts to make a smaller Docker image:
26 apt-get clean && \
27 rm -rf /var/lib/apt/lists/* && \
28 cd /home/builder/lib/android-ndk/ && \
29 rm -Rf toolchains/mips* && \
30 rm -Rf sources/cxx-stl/gabi++ sources/cxx-stl/system sources/cxx-stl/stlport sources/cxx-stl/gnu-libstdc++ && \
31 cd /home/builder/lib/android-sdk/tools && rm -Rf emulator* lib* proguard templates
32
33 # We expect this to be mounted with '-v $PWD:/home/builder/termux-packages':
34 WORKDIR /home/builder/termux-packages
35