尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Docker-Android 完整指南:一条命令在 Docker 容器里跑起 Android 模拟器

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-androidDocker-Android 是一个开源项目帮你在 Docker 容器里直接运行 Android 模拟器并通过 noVNC 在浏览器中实时查看模拟器画面。它适合需要 Android 环境的开发者和测试人员不用买真机、不用专门配测试机就能搭环境、跑 Appium UI-Test、构建 Android 项目或远程复现线上问题。谁需要它 / 典型使用场景如果你正在做 Android 自动化测试又不想在每台机器上手动装模拟器这个项目能帮你一键把整套环境装进容器。通过切换镜像标签就能使用 Android 9.0~14.0设备轮廓涵盖 Samsung Galaxy S10、S9、S8、Nexus 7、Pixel C 等十余款机型。它还支持模拟短信收发这类测试场景 跑起来之前先过这几关Docker 已安装docker --version有输出即可。KVM 虚拟化可用镜像跑在 Ubuntu 上且依赖硬件加速先校验一下sudo apt install cpu-checker kvm-ok输出KVM acceleration can be used才算过关。宿主系统Ubuntu 最省事macOS 需要装支持虚拟化的 Ubuntu 虚拟机Windows 11 可用 WSL2但要在配置里开启nestedVirtualizationtrue。/dev/kvm设备存在ls -l /dev/kvm能列出该文件就没问题否则容器里的模拟器会慢得像幻灯片。 核心命令拆解先直接跑这条完整命令以 Android 11 为例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每个参数在干什么参数作用-d容器在后台跑不占终端-p 6080:6080把容器内 noVNC 的 Web 端口映射到本机-e EMULATOR_DEVICESamsung Galaxy S10选设备轮廓换成Nexus 7就是平板-e WEB_VNCtrue开启浏览器访问不开就只能用 VNC 客户端连--device /dev/kvm把宿主机的硬件虚拟化设备挂进容器模拟器速度的关键--name android-container给容器起名后面管理方便budtmo/docker-android:emulator_11.0镜像标签emulator_9.0~emulator_14.0对应不同 Android 版本跑完之后打开浏览器访问http://localhost:6080就能看到模拟器的实时画面。想顺带接 Appium 的话加-p 4723:4723 -e APPIUMtrue两个参数即可细节见 Appium UI-Test 用法。验证 日常操作# 看模拟器启动到哪一步了卡在 booting 超过几分钟时用它 docker exec -it android-container cat device_status # 容器日志排查启动失败、VNC 连不上的首选 docker logs -f android-container # 容器停了直接拉起来不用重新 run docker start android-container如果想像平时那样用 adb 直接操控容器里的模拟器启动时追加-p 5554:5554 -p 5555:5555然后在本机执行adb connect 127.0.0.1:5555流程可参考 从宿主机控制模拟器。 数据持久化可选但推荐默认情况下容器一重启模拟器设备就会重置回出厂状态。想让装过的 App、账号数据跨重启保留把卷挂到/home/androidusr就行docker run -d -v data:/home/androidusr ... budtmo/docker-android:emulator_11.0不加这个-v参数容器一删设备里的数据就跟着没了。跑通之后下一步建议接上 Appium 写第一条 UI-Test 脚本或翻一遍 环境变量配置清单VNC 密码、日志 Web 页面、模拟器数据分区大小等都在这里调。想要云端模拟器设备还可以看看 Genymotion 云集成方案见仓库 documentations 目录以仓库实际为准。【免费下载链接】docker-androidAndroid in docker solution with noVNC supported, video recording and mcp server项目地址: https://gitcode.com/GitHub_Trending/do/docker-android创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表