Docker-Android 安装与上手完整指南:一条命令在浏览器里跑起安卓模拟器
【免费下载链接】docker-androidAndroid in docker solution with noVNC supported, video recording and mcp server项目地址: https://gitcode.com/GitHub_Trending/do/docker-android
Docker-Android 把完整的安卓模拟器装进一个 Docker 容器,不用 Android Studio,不用单独折腾虚拟机。按本文操作完,你能在浏览器里打开一个可用、可换型号的安卓模拟器,直接点按操作,甚至接上自动化测试。
🧭 它是什么,凭什么能做到
一句话定位:把安卓模拟器变成一条命令就能跑起来的标准容器镜像,专为应用开发、测试和自动化场景设计。
它能做到的几件事:
- 设备随你挑:Samsung Galaxy S10、Nexus 5、Nexus 7 等十几种手机/平板机型,换机型只改一个参数
- 安卓版本可选:官方镜像覆盖 Android 9.0 到 14.0
- 可远程操控:容器启动后,宿主机直接用 adb 连进去,跑 Appium 这类 UI 自动化测试
靠哪些技术实现:
- Docker 容器:把模拟器、依赖、屏幕服务全部打包进一个镜像,拉下来就能跑,换台机器环境也完全一致
- noVNC:一个网页版 VNC 客户端,把容器里的模拟器画面实时传到浏览器,不用装任何远程桌面软件
- KVM:Linux 的硬件虚拟化设备(/dev/kvm),挂进容器后模拟器接近原生速度,不卡
- ADB:安卓调试桥,宿主机靠它远程控制容器里的模拟器,执行安装、点按、截图
- Supervisord:容器内的进程管家,负责拉起屏幕、端口、基础服务三个进程并保活
✅ 动手前检查清单
逐项打勾,全部通过再往下走:
- Docker 已安装:终端执行
docker --version,能打印版本号即可 - 系统环境是 Ubuntu:官方镜像目前只在 Ubuntu 上运行,Windows / macOS 用户需要先装一台支持虚拟化的 Ubuntu 虚拟机
- CPU 虚拟化已开启:执行下面的命令,看到 "KVM acceleration can be used" 就通过了
- /dev/kvm 设备就绪:执行
ls -l /dev/kvm能列出文件,说明虚拟化设备可用
sudo apt install cpu-checker kvm-ok🚀 核心操作三步走
启动:一条命令拉起安卓模拟器
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参数逐个人话版:
-d:后台运行,不占用当前终端-p 6080:6080:把容器内 noVNC 的 6080 端口映射到本机,浏览器就用它看画面-e EMULATOR_DEVICE=...:指定机型,换成列表里其他名字(如 "Nexus 5")即可-e WEB_VNC=true:开启浏览器画面功能--device /dev/kvm:把硬件虚拟化设备传给容器,没有它模拟器会非常慢--name android-container:给容器起个名字,方便后面查状态- 结尾的镜像名:
emulator_11.0表示 Android 11,换成emulator_12.0就升级版本
验证:浏览器里打开安卓画面
等一两分钟启动完成后,浏览器访问http://localhost:6080,看到模拟器开机进桌面就成功了。
再确认一下设备状态,容器会把状态写进device_status文件:
docker exec -it android-container cat device_status收尾:一行参数实现数据持久化
默认情况下容器一重启,模拟设备就恢复出厂状态。想让装好的 App、聊天记录保留下来,在上面的docker run命令里加一个参数即可:
-v data:/home/androidusr
这叫"卷挂载"——把宿主机的一块命名存储空间 data 挂到容器的用户目录。数据存在宿主机的卷里,容器删了重建,应用和数据都还在。
下一步
模拟器跑起来只是开始:接 Appium 做 UI 自动化,看 USE_CASE_APPIUM.md;想在宿主机直接 adb 操控容器里的设备,看 USE_CASE_CONTROL_EMULATOR.md;日志共享等更多自定义配置,汇总在 CUSTOM_CONFIGURATIONS.md。照着这几篇往下走,这个容器还能变成你 CI 流水线里的测试节点。
【免费下载链接】docker-androidAndroid in docker solution with noVNC supported, video recording and mcp server项目地址: https://gitcode.com/GitHub_Trending/do/docker-android
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考