docker-emulator-android
docker-emulator-android is one of the components of android-farm. It runs android emulator with hardware acceleration in a container.
Features
- 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
andQEMU_OPTS
- overriding adb ports using
CONSOLE_PORT (default 5554)
,ADB_PORT (default 5555)
- overriding config.ini variables using
- VNC server (port 5900)
- Google API's enabled
Usage
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="skin.name=600x1024;hw.lcd.density=160;hw.lcd.height=600;hw.lcd.width=1024;hw.device.name=7in 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
Building
$ export DOCKER_USER=user
$ export DOCKER_PASS=password
$ make PROXY=docker-registry-url/ build tag login push # eg PROXY=registry.hub.docker.com
License
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