7.4K Star这么牛!Docker里面可以运行Android系统
yuyutoo 2025-01-13 18:58 2 浏览 0 评论
[开源日记],分享10k+Star的优质开源项目
项目介绍
Docker-android 是一个基于 Docker 镜像的解决方案,旨在支持 Android 应用的开发和测试。使用该镜像,用户可以在不同的设备和皮肤上运行 Android 模拟器,并支持一系列工具如 noVNC、adb、Appium、Selenium Grid 以及与真实设备和 Genymotion Cloud 的集成。
功能特点
- 1.轻量级: 基于 Alpine Linux,镜像体积小,支持 KVM 加速和 Java 11运行环境,使得容器易于部署和管理。
- 2.多版本支持: 支持 Android 6.0 到 12.0 的不同 API 版本,以及 Chrome 浏览器和 Chromedriver 的对应版本。
- 3.多设备模拟: 提供多种手机和平板设备的模拟器支持,如三星 Galaxy S10、Nexus 7 等,满足不同设备的测试需求。
- 4.远程控制: 通过 noVNC 在浏览器中查看和控制模拟器的界面,支持录制视频和截图,方便远程开发和测试。
- 5.自动化测试: 支持使用 Appium 和 Selenium Grid 进行自动化测试,兼容不同测试框架如 Espresso、Robotium,提高测试效率。
- 6.云集成: 与 Genymotion Cloud 集成,使用云端的 Android 虚拟设备,加速测试和开发流程。
- 7.灵活配置: 支持自定义配置,包括代理、语言、分辨率、内存等,满足个性化需求。
- 8.项目构建: 支持构建 Android 项目并运行单元测试,为开发者提供全面的开发环境。
- 9.支持多种系统
Type | Device Name |
Phone | Samsung Galaxy S10 |
Phone | Samsung Galaxy S9 |
Phone | Samsung Galaxy S8 |
Phone | Samsung Galaxy S7 Edge |
Phone | Samsung Galaxy S7 |
Phone | Samsung Galaxy S6 |
Phone | Nexus 4 |
Phone | Nexus 5 |
Phone | Nexus One |
Phone | Nexus S |
Tablet | Nexus 7 |
使用场景
- Android开发者: 开发者可以利用 docker-android 快速搭建 Android 开发环境,跨版本调试和测试应用,提高开发效率。
- 测试团队: 测试团队可以利用该镜像进行自动化测试,支持不同框架的测试,同时通过云集成和远程控制进行设备测试。
- 教育机构: 教育机构可以利用 docker-android 进行教学和培训,提供统一的 Android 环境,便于学生实践和学习。
快速开始
如果你的主机操作系统为 Ubuntu,则可以跳过以下步骤。对于 macOS 和 Windows 用户,你需要在支持虚拟化的 Ubuntu 操作系统上运行该镜像,因为该镜像仅支持在 Ubuntu 操作系统下运行。
计算机要支持虚拟化。检查虚拟化是否启用:
sudo apt install cpu-checker
kvm-ok
运行 Docker-Android 容器:
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
打开浏览器并访问 http://localhost:6080 查看容器内部。
检查模拟器状态:
docker exec -it android-container cat device_status
开源地址:https://github.com/budtmo/docker-android
[开源日记],分享10k+Star的优质开源项目
创作不易分享,赞,在看,三连支持一波,感谢。↓↓↓
相关推荐
- 如何在HTML中使用JavaScript:从基础到高级的全面指南!
-
“这里是云端源想IT,帮你...
- 推荐9个Github上热门的CSS开源框架
-
大家好,我是Echa。...
- 硬核!知网首篇被引过万的论文讲了啥?作者什么来头?
-
整理|袁小华近日,知网首篇被引量破万的中文论文及其作者备受关注。知网中心网站数据显示,截至2021年7月23日,由华南师范大学教授温忠麟等人发表在《心理学报》2004年05期上的学术论文“中介效应检验...
- 为什么我推荐使用JSX开发Vue3_为什么用vue不用jquery
-
在很长的一段时间中,Vue官方都以简单上手作为其推广的重点。这确实给Vue带来了非常大的用户量,尤其是最追求需求开发效率,往往不那么在意工程代码质量的国内中小企业中,Vue占据的份额极速增长...
-
- 【干货】一文详解html和css,前端开发需要哪些技术?
-
网站开发简介...
-
2025-02-20 18:34 yuyutoo
- 分享几个css实用技巧_cssli
-
本篇将介绍几个css小技巧,目录如下:自定义引用标签的符号重置所有标签样式...
- 如何在浏览器中运行 .NET_怎么用浏览器运行代码
-
概述:...
- 前端-干货分享:更牛逼的CSS管理方法-层(CSS Layers)
-
使用CSS最困难的部分之一是处理CSS的权重值,它可以决定到底哪条规则会最终被应用,尤其是如果你想在Bootstrap这样的框架中覆盖其已有样式,更加显得麻烦。不过随着CSS层的引入,这一...
-
- HTML 基础标签库_html标签基本结构
-
HTML标题HTML标题(Heading)是通过-...
-
2025-02-20 18:34 yuyutoo
- 前端css面试20道常见考题_高级前端css面试题
-
1.请解释一下CSS3的flexbox(弹性盒布局模型),以及适用场景?display:flex;在父元素设置,子元素受弹性盒影响,默认排成一行,如果超出一行,按比例压缩flex:1;子元素设置...
- vue引入外部js文件并使用_vue3 引入外部js
-
要在Vue中引入外部的JavaScript文件,可以使用以下几种方法:1.使用``标签引入外部的JavaScript文件。在Vue的HTML模板中,可以直接使用``标签来引入外部的JavaScrip...
- 网页设计得懂css的规范_html+css网页设计
-
在初级的前端工作人员,刚入职的时候,可能在学习前端技术,写代码不是否那么的规范,而在工作中,命名的规范的尤为重要,它直接与你的代码质量挂钩。网上也受很多,但比较杂乱,在加上每年的命名都会发生一变化。...
- Google在Chrome中引入HTML 5.1标记
-
虽然负责制定Web标准的WorldWideWebConsortium(W3C)尚未宣布HTML5正式推荐规格,而Google已经迁移到了HTML5.1。即将发布的Chrome38将引入H...
- HTML DOM 引用( ) 对象_html中如何引用js
-
引用对象引用对象定义了一个同内联元素的HTML引用。标签定义短的引用。元素经常在引用的内容周围添加引号。HTML文档中的每一个标签,都会创建一个引用对象。...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- mybatis plus (70)
- scheduledtask (71)
- css滚动条 (60)
- java学生成绩管理系统 (59)
- 结构体数组 (69)
- databasemetadata (64)
- javastatic (68)
- jsp实用教程 (53)
- fontawesome (57)
- widget开发 (57)
- vb net教程 (62)
- hibernate 教程 (63)
- case语句 (57)
- svn连接 (74)
- directoryindex (69)
- session timeout (58)
- textbox换行 (67)
- extension_dir (64)
- linearlayout (58)
- vba高级教程 (75)
- iframe用法 (58)
- sqlparameter (59)
- trim函数 (59)
- flex布局 (63)
- contextloaderlistener (56)