Hi, I am new to Docker and I’m creating an image to develop with Ionic. I need to use an emulator but I don’t seem to be able to launch this, this is the image I have so far by help of other’s images, does anyone know how I could achieve this?
FROM bitnami/minideb:jessie
MAINTAINER marco [dot] turi [at] hotmail [dot] it
ENV DEBIAN_FRONTEND=noninteractive \
ANDROID_HOME=/opt/android-sdk-linux \
NPM_VERSION=6.4.1 \
IONIC_VERSION=3.20.1 \
CORDOVA_VERSION=8.0.0 \
YARN_VERSION=1.10.1 \
GRADLE_VERSION=4.10.2 \
ROOTPASSWORD=android
# Install basics
RUN apt-get update && \
apt-get install -y git wget curl unzip bzip2 ssh net-tools openssh-server socat && \
curl -sL https://deb.nodesource.com/setup_8.x | bash - && \
apt-get update && \
apt-get install -y nodejs && \
npm install -g npm@"$NPM_VERSION" cordova@"$CORDOVA_VERSION" ionic@"$IONIC_VERSION" && \
npm cache clear --force && \
apt-get install -f -y && \
apt-get clean && \
mkdir Sources && \
# install python-software-properties (so you can do add-apt-repository)
apt-get update && apt-get install -y -q python-software-properties software-properties-common && \
add-apt-repository "deb http://ppa.launchpad.net/webupd8team/java/ubuntu xenial main" -y && \
echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections && \
apt-get update && apt-get -y install oracle-java8-installer && \
# System libs for android enviroment
echo ANDROID_HOME="${ANDROID_HOME}" >> /etc/environment && \
dpkg --add-architecture i386 && \
apt-get update && \
apt-get install -y --force-yes expect ant wget libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1 qemu-kvm kmod && \
apt-get clean && \
apt-get autoclean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \
# Install Android Tools
cd /opt \
&& wget -q https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip -O android-sdk-tools.zip \
&& unzip -q android-sdk-tools.zip -d ${ANDROID_HOME} \
&& rm android-sdk-tools.zip && \
# Install Gradle
mkdir /opt/gradle && cd /opt/gradle && \
wget --output-document=gradle.zip --quiet https://services.gradle.org/distributions/gradle-"$GRADLE_VERSION"-bin.zip && \
unzip -q gradle.zip && \
rm -f gradle.zip && \
chown -R root. /opt
# Setup environment
ENV PATH ${PATH}:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools:/opt/gradle/gradle-${GRADLE_VERSION}/bin
# Install Android SDK
RUN yes Y | ${ANDROID_HOME}/tools/bin/sdkmanager \
"platforms;android-26" \
"build-tools;26.0.2" \
"platform-tools" \
"emulator"
RUN mkdir /usr/local/android-sdk/tools/keymaps && \
touch /usr/local/android-sdk/tools/keymaps/en-us
RUN mkdir /var/run/sshd && \
echo "root:$ROOTPASSWORD" | chpasswd && \
sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config && \
sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd && \
echo "export VISIBLE=now" >> /etc/profile
ENV NOTVISIBLE "in users profile"
RUN cordova telemetry off
WORKDIR Sources
EXPOSE 8100 35729 22 5037 5554 5555 5900 443 80
Thanks.