explaingit

budtmo/docker-android

Analysis updated 2026-06-24

15,091PythonAudience · developerComplexity · 3/5Setup · hard

TLDR

Docker images that run a full Android emulator (API 28 to 34) inside a container, viewable in a browser over VNC, useful for app development, Appium UI tests, and CI pipelines.

Mindmap

mindmap
  root((docker-android))
    Inputs
      Docker image tag
      Device profile
      Optional APK volume
    Outputs
      Running Android emulator
      Web VNC on port 6080
      ADB over network
    Use cases
      Manual app testing
      Appium UI automation
      Jenkins CI runs
      Cloud deploy AWS GCP Azure
    Requirements
      Linux host or WSL2
      KVM hardware virtualisation
      /dev/kvm passthrough
    Devices
      Galaxy S6 to S10
      Nexus and Pixel C
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run an Android 14 emulator in a browser tab on a Linux laptop without installing Android Studio.

USE CASE 2

Wire the container into Jenkins or GitHub Actions so Appium tests can target a fresh emulator per run.

USE CASE 3

Develop and debug an APK with ADB from the host while the device runs in a container.

USE CASE 4

Spin up several emulator containers in parallel on a cloud VM for load testing.

What is it built with?

DockerAndroid EmulatorKVMPythonVNCAppium

How does it compare?

budtmo/docker-androidrossant/awesome-mathandkret/cookbook
Stars15,09115,09715,082
LanguagePythonPythonPython
Last pushed2026-05-19
MaintenanceMaintained
Setup difficultyhardeasyeasy
Complexity3/51/52/5
Audiencedeveloperresearcherdata

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Needs a Linux host (or WSL2) with KVM hardware virtualisation enabled and /dev/kvm passed into the container.

License is not stated in the explanation.

In plain English

Docker-Android packages an Android emulator inside a Docker container, so you can run a virtual Android phone or tablet on your computer without setting up Android Studio by hand. Docker is a tool that lets you ship and run software in pre-built isolated environments, and this project provides one such environment focused on Android. The README pitches it as useful for developing and testing native, web, and hybrid Android apps. The project publishes a set of Docker images on Docker Hub, one per Android version, ranging from Android 9.0 (API 28) up to Android 14.0 (API 34), plus a separate image that integrates with Genymotion's cloud emulator. Inside each image you can pick from a list of preconfigured device profiles, including Samsung Galaxy S6 through S10, several Nexus phones, the Nexus 7 and Pixel C tablets, with skins taken from Android Studio and the Samsung developer site. The Quick Start section says the host must be running Ubuntu (Windows and macOS users need a virtualisation layer such as a VM or WSL2), and the CPU must support hardware virtualisation, which you can check with kvm-ok from the cpu-checker package. The example docker run command starts a container that exposes port 6080, picks the Samsung Galaxy S10 device, enables the web VNC interface, and passes /dev/kvm through. Once the container is up, you open http://localhost:6080 in a browser to see and interact with the emulator. By default the emulated device is destroyed on restart, mounting a volume at /home/androidusr persists it. The README also includes a WSL2 setup note for hardware acceleration on Windows 11, which requires adding the user to the kvm group and enabling nested virtualisation. The README lists use cases for building Android projects, running UI tests with Appium, controlling the emulator from the host machine, simulating SMS messages, running inside Jenkins, and deploying on Azure, AWS, GCP, or Alibaba Cloud. There is also a sponsor-only Pro version with extra features such as proxy and language configuration, support for newer Android releases, headless mode, Selenium 4 integration, video recording, and root privileges.

Copy-paste prompts

Prompt 1
Write the docker run command for budtmo/docker-android with API 33, Galaxy S10 skin, web VNC on 6080, and persisted user data.
Prompt 2
Set up budtmo/docker-android inside WSL2 on Windows 11 with nested virtualisation and the kvm group fix.
Prompt 3
Add budtmo/docker-android as a service in a docker-compose file, then run Appium tests against it from a Python container on the same network.
Prompt 4
Configure a GitHub Actions workflow that boots budtmo/docker-android and runs my Espresso UI suite on every PR.
Prompt 5
Compare budtmo/docker-android vs the official Google Android emulator container for running headless CI tests.

Frequently asked questions

What is docker-android?

Docker images that run a full Android emulator (API 28 to 34) inside a container, viewable in a browser over VNC, useful for app development, Appium UI tests, and CI pipelines.

What language is docker-android written in?

Mainly Python. The stack also includes Docker, Android Emulator, KVM.

What license does docker-android use?

License is not stated in the explanation.

How hard is docker-android to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is docker-android for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.