首页
/
行业洞察
/
正文
INDUSTRY INSIGHT · 深度
3条命令跑起一个Android容器:Docker-Android实战笔记
📅 2026/9/11 17:04:05
✍️ 爱科研究院
👁 阅读 3,247
3条命令跑起一个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同步、再对着KVM模块报错发呆而demo明天就要演示。后来我把这套环境挪进了Docker-Android一个把Android模拟器打进镜像的容器方案内置noVNC网页界面拉起来开浏览器就能看屏幕device_status文件随时告诉你模拟器起没起来。一句话概括它是什么Docker-Android把Android模拟器、设备皮肤、noVNC服务全装进一个Docker镜像镜像标签从Android 9排到Android 14你只需要一台开KVM的Linux机器。容器跑在什么宿主机上模拟器就长什么样在我机器上能跑不再依赖具体那台机器。先确认你的机器能不能跑先花10秒确认门槛省得后面白折腾。它只支持Ubuntu主机macOS/Windows得套一层Ubuntu虚机所以虚拟化检查是硬指标门槛要求确认方式CPU虚拟化开启Intel VT-x或AMD-Vkvm-ok返回OK用户权限当前用户在kvm组ls -l /dev/kvm权限可读写磁盘空间系统镜像模拟器数据预留10GB以上镜像标签覆盖Android 9-14一条线跑起来确认完之后你依次做三件事拉镜像、起容器、看状态。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跑完之后浏览器打开http://localhost:6080。第一次启动要多等几分钟因为容器要下载对应版本的Android系统镜像之后你会在网页里看到一部手机从开机画面走到桌面——那就是容器里正在跑的真模拟器不是截图。确认它就绪的办法是docker exec -it android-container cat device_status看到boot completed或者adb显示device就算起来了。想换Android版本把标签里的emulator_11.0换成emulator_14.0就行其余不动。跑起来之后能干什么按你要做的测试分三类每类都对应仓库里的一个场景文档。兼容性回归同一批用例分别对着S10、Nexus 5、Nexus 7起三个容器设备用EMULATOR_DEVICE指定。UI改动会不会撑爆7寸平板的布局跑完矩阵自然见分晓。系统能力模拟不想手动点开发者选项就直接adb emu sms send 12345678 测试消息往模拟器里灌一条短信验证应用的收信逻辑。要挂Appium的话起容器时多开4723端口并传APPIUMtrueAppium Server和模拟器在同一个容器里。CI流水线集成在Jenkins里把容器当作一个测试阶段docker run起容器、跑用例、退出。每次构建拿到的都是全新设备状态没有上个构建留下的应用和缓存想留人肉看屏的口子把6080也映射出来。从Demo到长期稳定跑如果你打算把它挂进Jenkins跑一个月有三件事要提前定下来。默认行为是容器重启后设备状态销毁挂卷就能保住-v android_data:/home/androidusr之后装过应用、写过的数据都还在。分区大小默认550MB装应用多了会撑爆用EMULATOR_DATA_PARTITION2g调大。ADB要跨机连的话起容器时映射5554和5555端口宿主机adb connect 容器IP:5555即可。资源分配上给容器限2核CPU、4G内存起步模拟器流畅度基本够用。踩坑速查症状容器起不来报/dev/kvm: permission denied→原因当前用户不在kvm组 →修法sudo usermod -aG kvm $USER登出重登。症状宿主机adb connect超时 →原因起容器时没映射5554/5555 →修法补上-p 5554:5554 -p 5555:5555重新起。症状装应用报存储空间不足或重启后数据全没 →原因没挂卷、默认数据分区太小 →修法加-v xxx:/home/androidusr并调大EMULATOR_DATA_PARTITION。更细的环境变量比如noVNC加密码、只读模式都在 documentations/ 里按场景分成了独立文档。收尾Docker-Android的价值就是把起一台Android设备从半小时压缩成一条docker run。下一步翻一下仓库里mixins/configs/devices/profiles/下的设备皮肤配置挑一台你项目真正要测的机型。【免费下载链接】docker-androidAndroid in docker solution with noVNC supported, video recording and mcp server项目地址: https://gitcode.com/GitHub_Trending/do/docker-android创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
📌 标签:
工业官网
设计趋势
AI 建站
SEO
获取完整报告 →
RELATED ARTICLES
推荐阅读
2026/9/11 17:04:05
网络原理07(中间人攻击)
2026/9/11 17:04:05
3 分钟拉起一台 Android 模拟器:Docker-Android 快速上手与排错
2026/9/11 17:04:05
3 步把网页视频存到本地:猫抓资源嗅探插件实操指南
2026/9/11 17:39:11
TradingAgents-CN 线程池异步事件循环错误修复实战:RuntimeError “There is no current event loop in thread“ 的根因与解决方案
2026/9/11 17:39:11
ANC系统中卡尔曼滤波为何是动态噪声抑制的收敛保障
2026/9/11 17:39:11
JAVA毕业设计-基于 SpringCloud 微服务架构的演唱会抢票系统的设计与实现(源码+LW+部署文档+全bao+远程调试+代码讲解等)
2026/9/11 17:39:11
MATLAB曲面拟合实战:从最小二乘到模型评估与调参
2026/9/11 17:39:11
[点赞收藏免费领取 · 项目源码]基于springboot的失眠互助小程序92731
2026/9/11 17:34:10
基于Spring Boot的零食销售系统的设计与实现(毕设源码+文档)
2026/9/11 0:02:03
数据容灾核心指标与实战方案解析
2026/9/11 0:02:03
Huly 平台 ClickUp 任务导入实战指南:从 CSV 导出到一键迁移全流程解析
2026/9/11 0:02:03
PyTorch 构建与代码生成工具链深度解析:从 tools 目录看懂构建流程、autograd/JIT 代码生成与 HIPify 移植
2026/9/11 5:40:15
超人会飞不算本事:系统稳定依赖清晰规则与边界设计
2026/9/11 8:29:24
超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论
2026/9/11 9:11:20
基于CNN的调制信号识别:MATLAB实现时频图分类实战