From 0e1cddca9091a18ae9e737bca1a17f1abd5c6714 Mon Sep 17 00:00:00 2001 From: Ronyell Henrique Date: Sun, 20 May 2018 18:17:08 -0300 Subject: [PATCH] #175 - Modifying docker to run application in emulator --- Dockerfile | 78 ++++++++++++++++++++++++++-------------------- docker-compose.yml | 10 +++--- 2 files changed, 50 insertions(+), 38 deletions(-) diff --git a/Dockerfile b/Dockerfile index 3b7220c..b7f4a1a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,8 +2,39 @@ FROM java:8 #In Host-Terminal exec this command: sudo xhost +local:docker -# Intall unzip -RUN apt-get install unzip +# Install base software packages +RUN dpkg --add-architecture i386 + +RUN apt-get update && \ + apt-get install software-properties-common \ + python-software-properties \ + wget \ + curl \ + git \ + libncurses5:i386 \ + libstdc++6:i386 \ + zlib1g:i386 \ + unzip -y && \ + apt-get clean + + +# —————————— +# Install Node and global packages +# —————————— +ENV NODE_VERSION 6.11.2 +RUN cd && \ + wget -q http://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-x64.tar.gz && \ + tar -xzf node-v${NODE_VERSION}-linux-x64.tar.gz && \ + mv node-v${NODE_VERSION}-linux-x64 /opt/node && \ + rm node-v${NODE_VERSION}-linux-x64.tar.gz +ENV PATH ${PATH}:/opt/node/bin + + +# —————————— +# Install Basic React-Native packages +# —————————— +RUN npm install -g create-react-native-app +RUN npm install -g react-native-cli # Install SDK RUN mkdir /app/ @@ -25,42 +56,21 @@ RUN yes | $ANDROID_HOME/tools/bin/sdkmanager "tools" RUN echo "y" | android update sdk - +RUN $ANDROID_HOME/tools/bin/sdkmanager "platforms;android-23" RUN $ANDROID_HOME/tools/bin/sdkmanager "platforms;android-25" RUN $ANDROID_HOME/tools/bin/sdkmanager "system-images;android-25;google_apis;x86" +ENV ANDROID_COMPONENTS platform-tools,build-tools-25.0.1,android-25,build-tools-21.0.0,android-21 +ENV GOOGLE_COMPONENTS extra-android-m2repository,extra-google-m2repository,extra-google-google_play_services,extra-google-gcm + +RUN echo y | android update sdk --no-ui --all --filter "${ANDROID_COMPONENTS}" ; \ + echo y | android update sdk --no-ui --all --filter "${GOOGLE_COMPONENTS}" + +ENV QT_XKB_CONFIG_ROOT=/usr/share/X11/xkb + # Create AVD RUN $ANDROID_HOME/tools/bin/avdmanager create avd\ - -n android-emulator\ + -n emulator-android\ -k "system-images;android-25;google_apis;x86"\ --device "Nexus 5"\ - --sdcard 100M - - -# Install base software packages -RUN apt-get update && \ - apt-get install software-properties-common \ - python-software-properties \ - wget \ - curl \ - git \ - unzip -y && \ - apt-get clean - - -# —————————— -# Install Node and global packages -# —————————— -ENV NODE_VERSION 6.11.2 -RUN cd && \ - wget -q http://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-x64.tar.gz && \ - tar -xzf node-v${NODE_VERSION}-linux-x64.tar.gz && \ - mv node-v${NODE_VERSION}-linux-x64 /opt/node && \ - rm node-v${NODE_VERSION}-linux-x64.tar.gz -ENV PATH ${PATH}:/opt/node/bin - - -# —————————— -# Install Basic React-Native packages -# —————————— -RUN npm install -g create-react-native-app \ No newline at end of file + --sdcard 700M \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 487d36c..00853f7 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,15 +1,17 @@ -android-emulator-merenda: +merenda-merenda: build: . volumes: - .:/code privileged: true + working_dir: /code net: host environment: - DISPLAY=$DISPLAY command: | bash -c " - cd /code/ && npm install + npm install --loglevel verbose + adb reverse tcp:8081 tcp:8081 /app/android-sdk-linux/tools/android list avd - /app/android-sdk-linux/tools/emulator -avd android-emulator & . - sleep 2m && npm run android + react-native run-android & . + /app/android-sdk-linux/tools/emulator -avd emulator-android "