2016-11-10 18:12:59 +00:00
|
|
|
FROM ubuntu:xenial
|
2016-04-22 00:45:17 +00:00
|
|
|
|
2016-11-17 15:55:02 +00:00
|
|
|
# Install the JDK
|
2016-11-24 09:55:46 +00:00
|
|
|
# We are going to need some 32 bit binaries because apt requires it
|
2016-11-17 15:55:02 +00:00
|
|
|
# file is need by the script that creates NDK toolchains
|
|
|
|
ENV DEBIAN_FRONTEND noninteractive
|
|
|
|
RUN dpkg --add-architecture i386 && \
|
|
|
|
apt-get update -qq && \
|
2016-11-24 09:55:46 +00:00
|
|
|
apt-get install -y \
|
|
|
|
autoconf \
|
|
|
|
automake \
|
|
|
|
build-essential \
|
|
|
|
bsdmainutils \
|
|
|
|
curl \
|
|
|
|
file \
|
|
|
|
git \
|
|
|
|
lsof \
|
|
|
|
libc6:i386 \
|
|
|
|
libconfig++9v5 \
|
|
|
|
libgcc1:i386 \
|
|
|
|
libncurses5:i386 \
|
|
|
|
libstdc++6:i386 \
|
|
|
|
libz1:i386 \
|
|
|
|
python \
|
|
|
|
python-dev \
|
|
|
|
s3cmd \
|
|
|
|
software-properties-common \
|
|
|
|
strace \
|
|
|
|
unzip \
|
|
|
|
wget \
|
|
|
|
zip && \
|
2016-11-10 18:12:59 +00:00
|
|
|
curl -sL https://deb.nodesource.com/setup_4.x | bash - && \
|
2016-11-17 15:55:02 +00:00
|
|
|
apt-get install -y nodejs && \
|
|
|
|
echo oracle-java6-installer shared/accepted-oracle-license-v1-1 select true | debconf-set-selections && \
|
|
|
|
add-apt-repository -y ppa:webupd8team/java && \
|
|
|
|
apt-get update -qq && \
|
|
|
|
apt-get install -y oracle-java8-installer && \
|
|
|
|
rm -rf /var/cache/oracle-jdk8-installer && \
|
|
|
|
apt-get clean
|
2016-04-22 00:45:17 +00:00
|
|
|
|
2016-11-10 18:12:59 +00:00
|
|
|
ENV NPM_CONFIG_UNSAFE_PERM true
|
2016-11-17 15:55:02 +00:00
|
|
|
|
|
|
|
# Locales
|
|
|
|
RUN locale-gen en_US.UTF-8
|
|
|
|
ENV LANG "en_US.UTF-8"
|
|
|
|
ENV LANGUAGE "en_US.UTF-8"
|
|
|
|
ENV LC_ALL "en_US.UTF-8"
|
|
|
|
|
2016-11-24 09:55:46 +00:00
|
|
|
# Install the Android SDK
|
|
|
|
ENV ANDROID_SDK_VERSION r24.4.1
|
|
|
|
RUN cd /opt && curl -s https://dl.google.com/android/android-sdk_${ANDROID_SDK_VERSION}-linux.tgz | tar -xz
|
|
|
|
ENV ANDROID_HOME /opt/android-sdk-linux
|
|
|
|
ENV PATH ${PATH}:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools
|
|
|
|
RUN echo y | android update sdk --no-ui --all --filter tools > /dev/null && \
|
|
|
|
echo y | android update sdk --no-ui --all --filter platform-tools | grep 'package installed' && \
|
|
|
|
echo y | android update sdk --no-ui --all --filter build-tools-24.0.0 | grep 'package installed' && \
|
|
|
|
echo y | android update sdk --no-ui --all --filter extra-android-m2repository | grep 'package installed' && \
|
|
|
|
echo y | android update sdk --no-ui --all --filter android-24 | grep 'package installed'
|
2016-11-17 15:55:02 +00:00
|
|
|
|
2016-11-24 09:55:46 +00:00
|
|
|
# Install the Android NDK
|
|
|
|
ENV ANDROID_NDK_VERSION r10e
|
|
|
|
RUN cd /opt && \
|
|
|
|
curl -sO http://dl.google.com/android/repository/android-ndk-${ANDROID_NDK_VERSION}-linux-x86_64.zip && \
|
|
|
|
unzip -q android-ndk-${ANDROID_NDK_VERSION}-linux-x86_64.zip && \
|
|
|
|
rm android-ndk-${ANDROID_NDK_VERSION}-linux-x86_64.zip
|
|
|
|
ENV ANDROID_NDK /opt/android-ndk-${ANDROID_NDK_VERSION}
|
2016-11-17 15:55:02 +00:00
|
|
|
|
2016-11-24 09:55:46 +00:00
|
|
|
RUN cd /opt && \
|
|
|
|
git clone https://github.com/facebook/watchman.git && \
|
|
|
|
cd watchman && \
|
|
|
|
git checkout v4.7.0 && \
|
|
|
|
./autogen.sh && ./configure && \
|
|
|
|
make && make install
|
|
|
|
|
|
|
|
RUN npm install -g react-native-cli
|