尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
如何三步在 Docker 容器中运行 Android 模拟器:docker-android 完整使用指南
如何三步在 Docker 容器中运行 Android 模拟器docker-android 完整使用指南【免费下载链接】docker-androidAndroid in docker solution with noVNC supported, video recording and mcp server项目地址: https://gitcode.com/GitHub_Trending/do/docker-android在开发机上装 Android 模拟器要下载 SDK、建 AVD模拟设备还要陪它吃几个 GB 内存CI 机器上往往干脆装不下。docker-android 把整套模拟器打包成 Docker 镜像一条命令拉起自带 noVNC 网页访问与日志共享。适合做移动端自动化测试、CI 构建或想快速在多种机型上验证应用的开发者。判断 docker-android 是否适合你的测试场景如果你是测试工程师要在 CI 环境里跑 Appium移动端自动化测试框架用例docker-android 可以替代构建机上装 AVD 的老办法调度任务时直接启动容器模拟器随容器一起起来构建机不用预装 Android SDK。如果你是开发者需要在不同机型上验证应用表现可以从它内置的 12 款设备档案里挑选比如三星 Galaxy S10 或 Nexus 7浏览器里就能看到画面不用反复装模拟器。如果你是 DevOps想把模拟器部署到云主机Azure、AWS、GCP或挂进 Jenkins 流水线noVNC 界面和日志共享让你不用登录机器就能看住容器里的执行情况。 三步把 docker-android 模拟器跑起来确认环境前提装好 Docker 与 KVM 虚拟化容器里的模拟器依赖 KVMLinux 的硬件虚拟化功能。先在宿主机安装 Docker再用kvm-ok命令确认虚拟化已开启。镜像目前只支持 Ubuntu 宿主环境macOS 和 Windows 用户需要先准备一台开启了虚拟化的 Ubuntu 虚拟机。一条命令启动 Android 容器docker run -d -p 6080:6080 -e EMULATOR_DEVICESamsung Galaxy S10 -e WEB_VNCtrue --device /dev/kvm --name android-container budtmo/docker-android:emulator_11.0其中emulator_11.0标签对应 Android 11.0 镜像6080是网页界面的端口。验证 docker-android 启动成功docker exec -it android-container cat device_status状态文件显示已就绪后用浏览器打开 localhost 的 6080 端口就能看到模拟器画面。 一张表看清 docker-android 支持的版本与设备Android 版本API 级别镜像标签9.028budtmo/docker-android:emulator_9.010.029budtmo/docker-android:emulator_10.011.030budtmo/docker-android:emulator_11.012.032budtmo/docker-android:emulator_12.013.033budtmo/docker-android:emulator_13.014.034budtmo/docker-android:emulator_14.0Genymotion 云—budtmo/docker-android:genymotion每个版本都提供最新与锁定发布版本两种标签方便你在可复现的 CI 环境里固定镜像。设备方面内置 12 款档案手机包括三星 Galaxy S6、S7、S7 Edge、S8、S9、S10 和 Nexus 4、5、One、S平板包括 Nexus 7 与 Pixel C。每款机型都配有仿真皮肤模拟器的立体外观仓库内还内置了 noVNC、日志共享等组件并提供了 MCP server 接口便于与 AI 工具对接。拆解 docker-android 常见任务自动化测试、远程控制与短信模拟任务一在容器里跑 Appium UI 自动化测试任务让 Appium 脚本直接对着模拟器执行不在宿主机单独装 Appium 和模拟器。做法启动命令中额外加上-p 4723:4723和-e APPIUMtrueAppium Server默认 4723 端口就会随模拟器一起在容器内启动附加参数可通过APPIUM_ADDITIONAL_ARGS传入。效果宿主机测试脚本直连 4723 端口即可模拟器与测试同容器隔离运行容器还可以直接接入 Selenium Grid 4.x 统一调度。任务二从宿主机用 adb 远程控制容器内模拟器任务宿主机上的脚本或工具需要通过 adbAndroid 调试桥操作模拟器。做法启动时映射 5554 和 5555 两个端口然后在宿主机执行adb connect 容器IP:5555。效果宿主机的adb devices能列出容器里的模拟器装包、跑用例、拉日志都可以直接在宿主机完成。任务三模拟一条短信触发登录流程任务应用有短信验证码登录需要测试收到短信这一步。做法docker exec -it android-container adb emu sms send 123456 hello效果容器里的模拟器实时收到指定短信不依赖真实 SIM 卡登录流程可以完整走通。配置速查docker-android 常用环境变量一览表参数作用示例EMULATOR_DEVICE指定启动模拟器使用的机型Samsung Galaxy S10WEB_VNC开启 noVNC 网页界面默认端口 6080trueVNC_PASSWORD为 VNC 连接设置密码thisissecretWEB_LOG通过 Web UI 共享日志文件默认端口 9000trueEMULATOR_DATA_PARTITION设置数据分区大小默认 550m900mEMULATOR_NO_SKIN不加载皮肤节省资源trueAPPIUM容器内启动 Appium 服务器trueEMULATOR_NAME自定义模拟器名称my_emu除上表外Web VNC 还支持autoconnect、view_only、password等访问端点参数以及用EMULATOR_ADDITIONAL_ARGS透传 Android 模拟器命令行参数完整清单见自定义配置文档。排查 docker-android 常见报错与数据丢失问题容器重启后数据全丢——现象重装应用、配置清零。原因默认行为会在容器重启时销毁被模拟的设备。解决启动时把数据目录挂到卷上docker run -v data:/home/androidusr budtmo/docker-android:emulator_11.0模拟器起不来报 KVM 相关错误——原因宿主机没开硬件虚拟化或漏传--device /dev/kvm。解决先跑kvm-ok确认再检查启动命令是否带了该参数。浏览器打开 6080 端口看不到画面——原因没加-e WEB_VNCtrue或 6080 端口没有映射到宿主机。解决两个参数补齐后重启容器。macOS 或 Windows 直接运行失败——原因镜像只支持 Ubuntu 宿主环境。解决准备一台开启虚拟化的 Ubuntu 虚拟机Windows 11 用户也可以按 README 配置 WSL2 嵌套虚拟化。应用安装失败提示空间不足——原因数据分区默认只有 550m。解决用EMULATOR_DATA_PARTITION900m调大后再启动。进阶路线深入 docker-android 的测试与 CI 文档到这里你应该已经能独立启动、验证并排障一个 docker-android 实例。下一步建议按自己的场景把单点能力串成流水线做 UI 自动化可以读 Appium 测试完整用例要做持续集成可以看 Jenkins 集成指南再配合 Web 界面把模拟器真正接进你的交付流程。【免费下载链接】docker-androidAndroid in docker solution with noVNC supported, video recording and mcp server项目地址: https://gitcode.com/GitHub_Trending/do/docker-android创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

动态规划优化:粉刷房子II算法详解

动态规划优化:粉刷房子II算法详解

1. 问题背景与核心挑战"粉刷房子 II"这道算法题表面上是关于房屋粉刷的颜色选择问题,实际上是一个经典的动态规划(DP)练习题。题目描述为:有n栋房子排成一排,每栋房子可以用k种不同颜色中的一种进行粉刷,且相邻两栋房子…

📅 2026/9/11 14:09:18
macOS 上 LibreOffice 设置中文界面的完整指南

macOS 上 LibreOffice 设置中文界面的完整指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/9/11 14:09:18
SystemInformer 系统监控工具源码构建完整手册:4 步从克隆到可执行程序

SystemInformer 系统监控工具源码构建完整手册:4 步从克隆到可执行程序

SystemInformer 系统监控工具源码构建完整手册:4 步从克隆到可执行程序 【免费下载链接】systeminformer A free, powerful, multi-purpose tool that helps you monitor system resources, debug software and detect malware. Brought to you by Winsider Seminar…

📅 2026/9/11 14:04:17
MORE NEWS

更多资讯

📰

洁净车间环境监控系统设计与实践

1. 洁净车间环境监控的行业痛点在制药、电子制造、食品加工等行业,洁净车间的温湿度控制直接关系到产品质量和生产安全。传统的人工巡检方式存在三大致命缺陷:数据滞后性:每小时记录一次的手工台账无法捕捉突发性环境波动,等发现问…

📰

Windows全局文件搜索神器Everything:原理、配置与搜索技巧完全指南

电脑全局搜索Everything:丢掉“等它转圈”的日子,找回指尖即达的检索快感如果你每天都在Windows上找文件,一定经历过这种崩溃:明明知道文件名里有个关键词,但打开资源管理器右上角的搜索框,它转啊转&#x…

📰

CMSIS-6静态工程:嵌入式开发的编译期硬件建模革命

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

StaffML Vault 大规模构建 Runbook 实战:基于覆盖率分析与 Gemini 迭代生成的题库批量扩充管线

StaffML Vault 大规模构建 Runbook 实战:基于覆盖率分析与 Gemini 迭代生成的题库批量扩充管线 【免费下载链接】cs249r_book Machine Learning Systems 项目地址: https://gitcode.com/GitHub_Trending/cs/cs249r_book 导读 本指南完整讲解 cs249r / Staff…

📰

如何使用 supervisord 管理 Appsmith Docker 容器内的后端与 Caddy 进程

如何使用 supervisord 管理 Appsmith Docker 容器内的后端与 Caddy 进程 【免费下载链接】appsmith Platform to build admin panels, internal tools, and dashboards. Integrates with 25 databases and any API. 项目地址: https://gitcode.com/GitHub_Trending/ap/appsmi…

📰

PythonRobotics 动态窗口法(Dynamic Window Approach)实现解析:2D 移动机器人局部避障与轨迹规划实战

PythonRobotics 动态窗口法(Dynamic Window Approach)实现解析:2D 移动机器人局部避障与轨迹规划实战 【免费下载链接】PythonRobotics Python sample codes and textbook for robotics algorithms. 项目地址: https://gitcode.com/GitHub_…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬