跳到主要内容
Supermarket
返回能力市场
MCP Server
productivity
NOASSERTION

docker-android

Android in docker solution with noVNC supported, video recording, mcp server and AI-agent

budtmobudtmo
79/ 100

公开评测 · 综合采用结论

核心能力可用,建议在受控范围内试用

查看评测依据 评测我的项目基于公开项目证据,非安全认证或安装推荐
15.9kstars
1.8kforks
最近更新 8小时前
评测生成时间(北京时间)
本报告引擎
v3.10.0
当前引擎
v3.16.0

本报告与当前引擎使用不同规则;原分数不会自动更新,不同版本的分数不宜直接对比。

重新评测此项目

进入后确认来源与额度,提交才会创建任务。

Evaluation report

综合采用结论

79
B
满分 100
值得试用低风险
决策摘要

核心能力可用,建议在受控范围内试用

89%
高置信度
69
文档
100
安全
65
质量
100
活跃
65
采用
  • 基础评测完成+25/25确定性评分与静态安全扫描已完成
  • README 有效证据+18/257,010 个去重后的有效字符
  • 独立证据来源+16/204 类非重复证据,重复文件不叠加
  • 仓库元数据+10/10已取得仓库状态与采用数据
  • 活跃记录+5/5已取得最近提交时间
  • AI 复核+15/15已完成结构化 AI 证据复核
How it works · 流程图

Docker-Android容器启动与使用流程

README展示了从运行容器到访问VNC和检查状态的步骤,属于连续处理流程。

AI 提取 · 证据约束

左右滑动查看完整图示

Docker-Android容器启动与使用流程README展示了从运行容器到访问VNC和检查状态的步骤,属于连续处理流程。打开6080端口执行docker exec运行容器用户操作VNC访问用户操作检查状态用户操作
图示依据
  • • Quick Start步骤3运行容器
  • • 步骤4打开http://localhost:6080
  • • 步骤5使用docker exec cat device_status
五维表现
提供多种Android版本和设备的Docker镜像,支持VNC、ADB、MCP等,解决真实测试需求。但MCP为beta,文档缺少参数和错误处理,设计证据不足。
质量证据
  • README列出Android 9-14镜像和多种设备
  • Quick Start提供docker run命令和VNC访问
  • Use-Cases链接到具体文档
  • Persisting data章节说明挂载卷
  • Pro版本表格列出功能差异
采用建议
优势
  • 问题与用途描述
  • 有效 README
  • 安装或接入步骤
  • 可执行示例
  • 未发现已知高风险模式
关注点
  • 缺少输入、参数或工具说明
  • 缺少输出或结果说明
  • 缺少错误处理或排障
  • MCP服务器为beta,缺少具体使用说明
  • 未提供环境变量和参数详细说明
适合

Android应用开发和测试、UI自动化测试(Appium等)、CI/CD集成(Jenkins)、云部署场景

不建议直接用于

需要稳定MCP服务器的生产环境、非Ubuntu主机且无虚拟化支持的环境

也有自己的公开项目?先看完证据,再用当前规则生成独立报告。

评测我的项目 →
文档证据
69/100
问题与用途描述10 分
有效 README12 分
安装或接入步骤14 分
可执行示例16 分
输入、参数或工具说明11 分
输出或结果说明9 分
限制、权限或边界12 分
错误处理或排障8 分
许可证信息5 分
结构化章节3 分
安全证据
低风险
未发现已知高风险模式

静态扫描不是安全保证,生产接入前仍应人工复核权限和数据边界。

优先改进清单
  1. 01补充输入、参数或工具说明
  2. 02补充输出或结果说明
  3. 03补充错误处理或排障
方法、证据与局限展开
数据来源

GitHub Repository API

扫描范围

4 个文件 · 9,190 字符

评测引擎

v3.10.0 · AI 复核已启用(deepseek-chat)

局限
  • 静态评测不会安装或执行项目代码
  • 安全扫描基于高信号文件与已知模式,不能替代人工审计
  • 流行度只反映采用程度,不代表安全或工程质量

30 天热度趋势

README

README 图片

Paypal Donate PRs Welcome codecov Join the chat at https://gitter.im/budtmo/docker-android GitHub release

Docker-Android is a docker image built to be used for everything related to Android. It can be used for Application development and testing (native, web and hybrid-app).

Advantages of using this project

  1. Emulator with different device profile and skins, such as Samsung Galaxy S6, LG Nexus 4, HTC Nexus One and more.
  2. Support vnc to be able to see what happen inside docker container
  3. Support log sharing feature where all logs can be accessed from web-UI
  4. Ability to control emulator from outside container by using adb connect
  5. Integrated with other cloud solutions, e.g. Genymotion Cloud
  6. It can be used to build Android project
  7. It can be used to run unit and UI-Test with different test-frameworks, e.g. Appium, Espresso, etc.
  8. It support mcp server (beta-version)
  9. It support ai-agent (beta-version)

README 图片

List of Docker-Images

AndroidAPIImage with latest release versionImage with specific release version
9.028budtmo/docker-android:emulator_9.0budtmo/docker-android:emulator_9.0_<release_version>
10.029budtmo/docker-android:emulator_10.0budtmo/docker-android:emulator_10.0_<release_version>
11.030budtmo/docker-android:emulator_11.0budtmo/docker-android:emulator_11.0_<release_version>
12.032budtmo/docker-android:emulator_12.0budtmo/docker-android:emulator_12.0_<release_version>
13.033budtmo/docker-android:emulator_13.0budtmo/docker-android:emulator_13.0_<release_version>
14.034budtmo/docker-android:emulator_14.0budtmo/docker-android:emulator_14.0_<release_version>
--budtmo/docker-android:genymotionbudtmo/docker-android:genymotion_<release_version>
--budtmo/docker-android:mcpbudtmo/docker-android:mcp_<release_version>

List of Devices

TypeDevice Name
PhoneSamsung Galaxy S10
PhoneSamsung Galaxy S9
PhoneSamsung Galaxy S8
PhoneSamsung Galaxy S7 Edge
PhoneSamsung Galaxy S7
PhoneSamsung Galaxy S6
PhoneNexus 4
PhoneNexus 5
PhoneNexus One
PhoneNexus S
TabletNexus 7
TabletPixel C

Requirements

  1. Docker is installed on your system.

Quick Start

  1. If you use Ubuntu OS on your host machine, you can skip this step. For OSX and Windows OS user, you need to use Virtual Machine that support Virtualization with Ubuntu OS because the image can be run under Ubuntu OS only.

  2. Your machine should support virtualization. To check if the virtualization is enabled is:

    sudo apt install cpu-checker
    kvm-ok
    
  3. Run Docker-Android container

    docker run -d -p 6080:6080 -e EMULATOR_DEVICE="Samsung Galaxy S10" -e WEB_VNC=true --device /dev/kvm --name android-container budtmo/docker-android:emulator_11.0
    
  4. Open http://localhost:6080 to see inside running container.

  5. To check the status of the emulator

    docker exec -it android-container cat device_status
    

Persisting data

The default behaviour is to destroy the emulated device on container restart. To persist data, you need to mount a volume at /home/androidusr: docker run -v data:/home/androidusr budtmo/docker-android:emulator_11.0

WSL2 Hardware acceleration (Windows 11 only)

Credit goes to Guillaume - The Parallel Interface blog

Microsoft - Advanced settings configuration in WSL

  1. Add yourself to the kvm usergroup.

    sudo usermod -a -G kvm ${USER}
    
  2. Add necessary flags to /etc/wsl.conf to their respective sections.

    [boot]
    command = /bin/bash -c 'chown -v root:kvm /dev/kvm && chmod 660 /dev/kvm'
    

    Then, using PowerShell, open a notepad on notepad $env:USERPROFILE\.wslconfig. Inside, put these other flags:

    [wsl2]
    nestedVirtualization=true
    
  3. Restart WSL2 via CMD prompt or Powershell

    wsl --shutdown
    

command = /bin/bash -c 'chown -v root:kvm /dev/kvm && chmod 660 /dev/kvm' sets /dev/kvm to kvm usergroup rather than the default root usergroup on WSL2 startup.

nestedVirtualization flag is only available to Windows 11.

If this setup does not work, you may have an old WSL version. In that case, ignore \.wslconfig and put everything on /etc/wsl.conf, including the [wsl2] flag.

Use-Cases

  1. Build Android project
  2. UI-Test with Appium
  3. Control Android emulator on host machine
  4. SMS Simulation
  5. Jenkins
  6. Deploying on cloud (Azure, AWS, GCP)

Custom-Configurations

This document contains information about configurations that can be used to enable some features, e.g. log-sharing, etc.

Genymotion

README 图片

For you who do not have ressources to maintain the simulator or to buy machines or need different device profiles, you can give a try by using Genymotion SAAS. Docker-Android is integrated with Genymotion on different cloud services, e.g. Genymotion SAAS, AWS, GCP, Alibaba Cloud. Please follow this document for more detail.

Emulator Skins

The Emulator skins are taken from Android Studio IDE and Samsung Developer Website

USERS

docker-android-users

PRO VERSION

Due to high requests for help and to be able to actively maintain the projects, the creator has decided to create docker-android-pro. Docker-Android-Pro is a sponsor based project which mean that the docker image of pro-version can be pulled only by active sponsor.

The differences between normal version and pro version are:

FeatureNormalProComment
user-behavior-analyticsYesNo-
ai-agentNoYesCurrently supported local AI-host/AI-provider: Ollama
proxyNoYesSet up company proxy on Android emulator on fly
languageNoYesSet up language on Android emulator on fly
Newer Android versionNoYesSupport other newer Android version e.g. Android 15, Android 16, Android 17, etc
root-privilegedNoYesAble to run command with security privileged
headless-modeNoYesSave resources by using headless mode
Selenium 4.x integrationNoYesRunning Appium UI-Tests againt one (Selenium Hub) endpoint for Android- and iOS emulator(s) / device(s)
multiple Android-SimulatorsNoYes (soon)Save resources by having multiple Android-Simulators on one docker-container
Google Play StoreNoYes (soon)-
Video RecordingNoYes (soon)Helpful for debugging

List pro-version images:

AndroidAPITypeImage with latest release versionImage with specific release version
9.028Normalbudtmo2/docker-android-pro:emulator_9.0budtmo2/docker-android-pro:emulator_9.0_<release_version>
10.029Normalbudtmo2/docker-android-pro:emulator_10.0budtmo2/docker-android-pro:emulator_10.0_<release_version>
11.030Normalbudtmo2/docker-android-pro:emulator_11.0budtmo2/docker-android-pro:emulator_11.0_<release_version>
12.032Normalbudtmo2/docker-android-pro:emulator_12.0budtmo2/docker-android-pro:emulator_12.0_<release_version>
13.033Normalbudtmo2/docker-android-pro:emulator_13.0budtmo2/docker-android-pro:emulator_13.0_<release_version>
14.034Normalbudtmo2/docker-android-pro:emulator_14.0budtmo2/docker-android-pro:emulator_14.0_<release_version>
15.035Normalbudtmo2/docker-android-pro:emulator_15.0budtmo2/docker-android-pro:emulator_15.0_<release_version>
16.036Normalbudtmo2/docker-android-pro:emulator_16.0budtmo2/docker-android-pro:emulator_16.0_<release_version>
17.037Normalbudtmo2/docker-android-pro:emulator_17.0budtmo2/docker-android-pro:emulator_17.0_<release_version>
9.028Headlessbudtmo2/docker-android-pro:emulator_headless_9.0budtmo2/docker-android-pro:emulator_headless_9.0_<release_version>
10.029Headlessbudtmo2/docker-android-pro:emulator_headless_10.0budtmo2/docker-android-pro:emulator_headless_10.0_<release_version>
11.030Headlessbudtmo2/docker-android-pro:emulator_headless_11.0budtmo2/docker-android-pro:emulator_headless_11.0_<release_version>
12.032Headlessbudtmo2/docker-android-pro:emulator_headless_12.0budtmo2/docker-android-pro:emulator_headless_12.0_<release_version>
13.033Headlessbudtmo2/docker-android-pro:emulator_headless_13.0budtmo2/docker-android-pro:emulator_headless_13.0_<release_version>
14.034Headlessbudtmo2/docker-android-pro:emulator_headless_14.0budtmo2/docker-android-pro:emulator_headless_14.0_<release_version>
15.035Headlessbudtmo2/docker-android-pro:emulator_headless_15.0budtmo2/docker-android-pro:emulator_headless_15.0_<release_version>
16.036Headlessbudtmo2/docker-android-pro:emulator_headless_16.0budtmo2/docker-android-pro:emulator_headless_16.0_<release_version>
17.037Headlessbudtmo2/docker-android-pro:emulator_headless_17.0budtmo2/docker-android-pro:emulator_headless_17.0_<release_version>
--AI-Agentbudtmo2/docker-android-pro:agentbudtmo2/docker-android-pro:agent_<release_version>
--Seleniumbudtmo2/docker-android-pro:seleniumbudtmo2/docker-android-pro:selenium_<release_version>

This document contains detail information about how to use docker-android-pro.

SPONSORS

Swiftproxy

Swiftproxy — Swiftproxy provides high-quality residential proxies for Android testing, automation, and location-based workflows. With 90M+ residential IPs, HTTP(S)/SOCKS5 support, flexible targeting, and non-expiring traffic, Swiftproxy helps users test apps and online services from different locations. Try Swiftproxy for free today and get 10% off with code PROXY90.

Learn more about Swiftproxy →

Rapidproxy

RapidProxy — RapidProxy is a high-performance proxy provider built for automation and multi-account operations, offering clean residential proxies and native static ISP IPs. Access 90 million+ residential IPs worldwide, with intelligent rotation, sticky sessions, and support for high-concurrency requests. Ideal for web scraping, browser automation, social media account management, e-commerce, and bulk account registration. Residential proxies start at just $0.55/GB, with bandwidth that never expires. Use code RAPID10 for 10% off.

Learn more about Rapidproxy →

LICENSE

See License