docker-android
docker-android copied to clipboard
Emulator does not show in noVNC
🐛 Bug Report
Operating System: Centos 7 which is jenkins slave,
Docker Image: Running docker containers with below docker-compose.
version: "2.2" services: // Selenium hub selenium_hub: image: selenium/hub:3.14.0-curium ports: - 4444:4444
//real_device: commented
nexus_7.1.1: image: budtmo/docker-android-x86-10.0 privileged: true # Increase scale number if needed scale: 1 depends_on: - selenium_hub ports: - 6080 volumes: - $PWD/example/sample_apk:/root/tmp/sample_apk - ./video-nexus_10.0:/tmp/video environment: - DEVICE=Nexus 5 - CONNECT_TO_GRID=true - APPIUM=true - SELENIUM_HOST=selenium_hub - AUTO_RECORD=true
samsung_galaxy_web_7.1.1: image: budtmo/docker-android-x86-10.0 privileged: true # Increase scale number if needed scale: 1 depends_on: - selenium_hub # - real_device ports: - 6080 volumes: - ./video-samsung_10.0:/tmp/video - $PWD/example/sample_apk:/root/tmp/sample_apk environment: - DEVICE=Samsung Galaxy S6 - CONNECT_TO_GRID=true - APPIUM=true - SELENIUM_HOST=selenium_hub - MOBILE_WEB_TEST=true - AUTO_RECORD=true
samsung_galaxy_web_5.1.1: image: budtmo/docker-android-x86-10.0 privileged: true # Increase scale number if needed scale: 1 depends_on: - selenium_hub # - real_device ports: - 6080 volumes: - ./video-samsung_10.0:/tmp/video - $PWD/example/sample_apk:/root/tmp/sample_apk environment: - DEVICE=Samsung Galaxy S6 - CONNECT_TO_GRID=true - APPIUM=true - SELENIUM_HOST=selenium_hub - MOBILE_WEB_TEST=true - AUTO_RECORD=true
Docker Version:
Docker version 19.03.3, build a872fc2f86
docker-compose version 1.24.0, build 0aa59064
Docker Command to start docker-android:
docker-compose up -d
Expected Behavior
I should see the emulators when i access noVNC. But i can see only the appium server
Actual Behavior
noVNC o/p
And selenium hub o/p
Also docker-compose log says,
selenium_hub_1 | starting selenium hub with configuration: selenium_hub_1 | { selenium_hub_1 | "host": "0.0.0.0", selenium_hub_1 | "port": 4444, selenium_hub_1 | "role": "hub", selenium_hub_1 | "maxSession": 5, selenium_hub_1 | "newSessionWaitTimeout": -1, selenium_hub_1 | "capabilityMatcher": "org.openqa.grid.internal.utils.DefaultCapabilityMatcher", selenium_hub_1 | "throwOnCapabilityNotPresent": true, selenium_hub_1 | "jettyMaxThreads": -1, selenium_hub_1 | "cleanUpCycle": 5000, selenium_hub_1 | "browserTimeout": 0, selenium_hub_1 | "timeout": 30, selenium_hub_1 | "debug": false selenium_hub_1 | } samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:40,078 CRIT Supervisor running as root (no user in config file) selenium_hub_1 | 10:57:39.003 INFO [GridLauncherV3.launch] - Selenium build info: version: '3.14.0', revision: 'aacccce0' samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:40,085 INFO supervisord started with pid 6 selenium_hub_1 | 10:57:39.007 INFO [GridLauncherV3$2.launch] - Launching Selenium Grid hub on port 4444 selenium_hub_1 | 2019-12-11 10:57:39.375:INFO::main: Logging initialized @796ms to org.seleniumhq.jetty9.util.log.StdErrLog selenium_hub_1 | 10:57:39.532 INFO [Hub.start] - Selenium Grid hub is up and running selenium_hub_1 | 10:57:39.533 INFO [Hub.start] - Nodes should register to http://172.22.0.2:4444/grid/register/ selenium_hub_1 | 10:57:39.533 INFO [Hub.start] - Clients should connect to http://172.22.0.2:4444/wd/hub nexus_7.1.1_1 | 2019-12-11 02:57:40,295 CRIT Supervisor running as root (no user in config file) nexus_7.1.1_1 | 2019-12-11 02:57:40,300 INFO supervisord started with pid 6 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:40,303 CRIT Supervisor running as root (no user in config file) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:40,308 INFO supervisord started with pid 6 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:41,088 INFO spawned: 'xvfb' with pid 9 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:41,090 INFO spawned: 'port-forward' with pid 10 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:41,092 INFO spawned: 'novnc' with pid 11 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:41,093 INFO spawned: 'openbox' with pid 12 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:41,095 INFO spawned: 'x11vnc' with pid 13 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:41,097 INFO spawned: 'screen-copy' with pid 14 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:41,099 INFO spawned: 'docker-appium' with pid 15 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:41,101 INFO spawned: 'atd' with pid 22 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:41,103 INFO spawned: 'auto-recording' with pid 24 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:41,104 INFO spawned: 'adb-utils' with pid 30 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:41,105 INFO exited: screen-copy (exit status 0; not expected) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:41,107 INFO exited: atd (exit status 0; not expected) nexus_7.1.1_1 | 2019-12-11 02:57:41,302 INFO spawned: 'xvfb' with pid 9 nexus_7.1.1_1 | 2019-12-11 02:57:41,304 INFO spawned: 'port-forward' with pid 10 nexus_7.1.1_1 | 2019-12-11 02:57:41,306 INFO spawned: 'novnc' with pid 11 nexus_7.1.1_1 | 2019-12-11 02:57:41,308 INFO spawned: 'openbox' with pid 12 nexus_7.1.1_1 | 2019-12-11 02:57:41,310 INFO spawned: 'x11vnc' with pid 13 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:41,311 INFO spawned: 'xvfb' with pid 9 nexus_7.1.1_1 | 2019-12-11 02:57:41,312 INFO spawned: 'screen-copy' with pid 14 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:41,314 INFO spawned: 'port-forward' with pid 10 nexus_7.1.1_1 | 2019-12-11 02:57:41,314 INFO spawned: 'docker-appium' with pid 19 nexus_7.1.1_1 | 2019-12-11 02:57:41,316 INFO spawned: 'atd' with pid 23 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:41,318 INFO spawned: 'novnc' with pid 11 nexus_7.1.1_1 | 2019-12-11 02:57:41,318 INFO spawned: 'auto-recording' with pid 25 nexus_7.1.1_1 | 2019-12-11 02:57:41,320 INFO spawned: 'adb-utils' with pid 29 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:41,320 INFO spawned: 'openbox' with pid 12 nexus_7.1.1_1 | 2019-12-11 02:57:41,321 INFO exited: screen-copy (exit status 0; not expected) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:41,322 INFO spawned: 'x11vnc' with pid 13 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:41,324 INFO spawned: 'screen-copy' with pid 14 nexus_7.1.1_1 | 2019-12-11 02:57:41,324 INFO exited: atd (exit status 0; not expected) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:41,327 INFO spawned: 'docker-appium' with pid 15 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:41,329 INFO spawned: 'atd' with pid 17 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:41,331 INFO spawned: 'auto-recording' with pid 18 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:41,333 INFO spawned: 'adb-utils' with pid 19 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:41,335 INFO exited: screen-copy (exit status 0; not expected) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:41,338 INFO exited: atd (exit status 0; not expected) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:42,133 INFO success: xvfb entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:42,133 INFO success: port-forward entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:42,133 INFO success: novnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:42,133 INFO success: openbox entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:42,133 INFO success: x11vnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:42,135 INFO spawned: 'screen-copy' with pid 93 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:42,135 INFO success: docker-appium entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:42,137 INFO spawned: 'atd' with pid 95 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:42,137 INFO success: auto-recording entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:42,137 INFO success: adb-utils entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:42,141 INFO exited: screen-copy (exit status 0; not expected) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:42,142 INFO exited: atd (exit status 0; not expected) nexus_7.1.1_1 | 2019-12-11 02:57:42,355 INFO success: xvfb entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) nexus_7.1.1_1 | 2019-12-11 02:57:42,355 INFO success: port-forward entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) nexus_7.1.1_1 | 2019-12-11 02:57:42,355 INFO success: novnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) nexus_7.1.1_1 | 2019-12-11 02:57:42,355 INFO success: openbox entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) nexus_7.1.1_1 | 2019-12-11 02:57:42,355 INFO success: x11vnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) nexus_7.1.1_1 | 2019-12-11 02:57:42,356 INFO spawned: 'screen-copy' with pid 95 nexus_7.1.1_1 | 2019-12-11 02:57:42,356 INFO success: docker-appium entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) nexus_7.1.1_1 | 2019-12-11 02:57:42,358 INFO spawned: 'atd' with pid 97 nexus_7.1.1_1 | 2019-12-11 02:57:42,358 INFO success: auto-recording entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) nexus_7.1.1_1 | 2019-12-11 02:57:42,358 INFO success: adb-utils entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) nexus_7.1.1_1 | 2019-12-11 02:57:42,362 INFO exited: screen-copy (exit status 0; not expected) nexus_7.1.1_1 | 2019-12-11 02:57:42,363 INFO exited: atd (exit status 0; not expected) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:42,366 INFO success: xvfb entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:42,366 INFO success: port-forward entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:42,366 INFO success: novnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:42,366 INFO success: openbox entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:42,366 INFO success: x11vnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:42,367 INFO spawned: 'screen-copy' with pid 94 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:42,368 INFO success: docker-appium entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:42,369 INFO spawned: 'atd' with pid 96 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:42,369 INFO success: auto-recording entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:42,369 INFO success: adb-utils entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:42,374 INFO exited: screen-copy (exit status 0; not expected) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:42,375 INFO exited: atd (exit status 0; not expected) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:44,146 INFO spawned: 'screen-copy' with pid 101 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:44,148 INFO spawned: 'atd' with pid 102 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:44,152 INFO exited: screen-copy (exit status 0; not expected) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:44,154 INFO exited: atd (exit status 0; not expected) nexus_7.1.1_1 | 2019-12-11 02:57:44,367 INFO spawned: 'screen-copy' with pid 102 nexus_7.1.1_1 | 2019-12-11 02:57:44,368 INFO spawned: 'atd' with pid 103 nexus_7.1.1_1 | 2019-12-11 02:57:44,373 INFO exited: screen-copy (exit status 0; not expected) nexus_7.1.1_1 | 2019-12-11 02:57:44,374 INFO exited: atd (exit status 0; not expected) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:44,379 INFO spawned: 'screen-copy' with pid 101 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:44,380 INFO spawned: 'atd' with pid 102 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:44,385 INFO exited: screen-copy (exit status 0; not expected) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:44,386 INFO exited: atd (exit status 0; not expected) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:47,159 INFO spawned: 'screen-copy' with pid 109 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:47,160 INFO spawned: 'atd' with pid 110 samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:47,165 INFO exited: screen-copy (exit status 0; not expected) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:47,167 INFO gave up: screen-copy entered FATAL state, too many start retries too quickly samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:47,167 INFO exited: atd (exit status 0; not expected) nexus_7.1.1_1 | 2019-12-11 02:57:47,378 INFO spawned: 'screen-copy' with pid 110 nexus_7.1.1_1 | 2019-12-11 02:57:47,380 INFO spawned: 'atd' with pid 111 nexus_7.1.1_1 | 2019-12-11 02:57:47,384 INFO exited: screen-copy (exit status 0; not expected) nexus_7.1.1_1 | 2019-12-11 02:57:47,385 INFO gave up: screen-copy entered FATAL state, too many start retries too quickly nexus_7.1.1_1 | 2019-12-11 02:57:47,385 INFO exited: atd (exit status 0; not expected) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:47,391 INFO spawned: 'screen-copy' with pid 109 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:47,392 INFO spawned: 'atd' with pid 110 samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:47,397 INFO exited: screen-copy (exit status 0; not expected) samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:47,398 INFO gave up: screen-copy entered FATAL state, too many start retries too quickly samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:47,398 INFO exited: atd (exit status 0; not expected) samsung_galaxy_web_5.1.1_1 | 2019-12-11 02:57:48,168 INFO gave up: atd entered FATAL state, too many start retries too quickly nexus_7.1.1_1 | 2019-12-11 02:57:48,386 INFO gave up: atd entered FATAL state, too many start retries too quickly samsung_galaxy_web_7.1.1_1 | 2019-12-11 02:57:48,399 INFO gave up: atd entered FATAL state, too many start retries too quickly selenium_hub_1 | 10:59:57.389 INFO [DefaultGridRegistry.add] - Registered a node http://IP:4723 selenium_hub_1 | 10:59:57.390 INFO [DefaultGridRegistry.add] - Registered a node http://IP:4723 selenium_hub_1 | 10:59:57.390 INFO [DefaultGridRegistry.add] - Registered a node http://IP:4723
Issue got resoled, after enabling KVM,
Can see the emulator now, but it get stuck on google screen and not getting started, Getting below exception:
emulator: _hwFingerprint_connect: connect finger print listen is called
emulator: got message from guest system fingerprint HAL
emulator: onGuestSendCommand: [0xf4b1200] Adb connected, start proxing data emulator: WARNING: UpdateCheck: Failure: Error emulator: WARNING: UpdateCheck: failed to get the latest version, skipping check (current version '29.2.1-5889189') emulator: INFO: ScreenCapturer.cpp:67: Screenshot from renderer emulator: INFO: ScreenCapturer.cpp:67: Screenshot from renderer emulator: WARNING: UpdateCheck: Failure: Error
@bharat8657 I am facing same issue in MacOS. How to enable KVM? Can you please help me on this
In case you are using Ubuntu as Host OS , install packages below to enable KVM , this require to run Android Emulator
sudo apt-get install qemu-kvm libvirt-bin bridge-utils virt-manager
Thanks for your reply @xnohat. I dont have any issue in Ubuntu PC/laptop, it works fine. But I am facing issue launching emulator in MacOS, which I have started a separate thread for MacOS issue #226. Can you please take a look & help me.
@xnohat I am running ~~Ubunut 18.04 inside a Virtualbox VM~~, I have installed the KVM packages. But still no luck... Am I missing something?
Edit: Yes, according to #216, the missing nested virtualization is the issue. Maybe this could be added on the Requirements inside the Readme.
Thanks for your help!