Introduction: Dockerized android emulator
More: Author   ReportBugs   

docker-emulator-android is one of the components of android-farm. It runs android emulator with hardware acceleration in a container.


  • Compatible with OpenSTF
  • Optimized for performance
    • hardware acceleration using KVM
    • QEMU 2
  • Changing emulator spec is supported by
    • overriding config.ini variables using ANDROID_CONFIG
    • overriding emulator cmd args using EMULATOR_OPTS and QEMU_OPTS
    • overriding adb ports using CONSOLE_PORT (default 5554), ADB_PORT (default 5555)
  • VNC server (port 5900)
  • Google API's enabled


For example to run default emulator options with Marshmallow (API 23):

$ docker run --rm --privileged -e ANDROID_ARCH="x86" -v /dev/kvm:/dev/kvm agoda-com/docker-emulator-android-23:latest
$ adb connect VIP:5555

If you want to start different configuration of device, for example a 7 inch tablet, you need to override config.ini variables:

$ docker run --rm --privileged -e ANDROID_ARCH="x86" -e ANDROID_CONFIG=";hw.lcd.density=160;hw.lcd.height=600;hw.lcd.width=1024; WSVGA (Tablet);avd.ini.displayname=7  WSVGA (Tablet) API 23;" -v /dev/kvm:/dev/kvm agoda-com/docker-emulator-android-23:latest

For all the options available please check the official documentation


$ export DOCKER_USER=user
$ export DOCKER_PASS=password
$ make PROXY=docker-registry-url/ build tag login push


docker-emulator-android is open source and available under the Apache License, Version 2.0.

Android SDK components are available under the Android Software Development Kit License

Support Me
About Me
Google+: Trinea trinea
GitHub: Trinea