news 2026/2/26 4:09:55

【GitHub每日速递 20260112】超牛!可定制的 Docker 安卓模拟器镜像,适配 CI 还能远程操控

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【GitHub每日速递 20260112】超牛!可定制的 Docker 安卓模拟器镜像,适配 CI 还能远程操控

原文: https://mp.weixin.qq.com/s/KCnHVAizDJNVQsEqkIANZA

超牛!可定制的 Docker 安卓模拟器镜像,适配 CI 还能远程操控

[docker-android] 是一个 在Docker容器中运行Android模拟器 的 工具。简单讲,它让你能快速启动一个可远程访问的Android模拟器,方便在无界面环境中测试App。适用人群:移动开发人员、自动化测试工程师

项目地址:https://github.com/HQarroum/docker-android

主要语言:Shell

stars: 2.1k

仓库核心功能

docker-android项目提供了一个轻量且可定制的 Docker 镜像,能将 Android 模拟器作为服务运行。其主要功能是通过 Docker 容器,提供一个可在网络上远程控制的完整 Android 模拟器环境。

主要优势

  • 轻量级:基于 Alpine 系统构建,镜像大小进行了优化,并且可以选择不包含 Android SDK 和模拟器,进一步减小镜像体积。例如,不包含 SDK 和模拟器的镜像未压缩时仅 414 MB,压缩后为 138 MB。
  • 可定制性强:支持自定义 Android 版本、设备类型和镜像类型,可根据需求设置 API 级别、镜像类型和 CPU 架构。
  • 网络连接便利:内置了模拟器和 ADB 的端口转发功能,方便在容器外部通过网络连接到模拟器。
  • 适合 CI 环境:可以无头模式运行,很适合在 CI 农场中使用,并且与scrcpy兼容,可远程控制 Android 屏幕。

主要内容与使用方法

构建与运行

  • 可以使用docker-compose构建并启动容器,如docker compose up android-emulator,还支持 GPU 加速和包含 Google Play 商店的配置。
  • 也可以使用纯 Docker 命令构建,如docker build -t android-emulator .

运行容器

构建好镜像后,需要挂载 KVM 驱动并暴露 ADB 端口,例如docker run -it --rm --device /dev/kvm -p 5555:5555 android-emulator。运行时需确保 API 33 版本至少有 4GB 内存和 8GB 磁盘空间。

数据保存

可通过挂载数据目录来保存数据,如docker run -it --rm --device /dev/kvm -p 5555:5555 -v ~/android_avd:/data android-emulator

连接 ADB

容器内的 ADB 服务器会自动启动并监听所有接口,启动内核后,可使用adb connect 127.0.0.1:5555连接 ADB。还能使用scrcpy远程控制模拟器屏幕。

自定义镜像

构建时可通过API_LEVELIMG_TYPEARCHITECTURE三个参数自定义 Android 版本、镜像类型和 CPU 架构。例如,要安装支持 Google Play 商店的 Android Pie 版本,可使用以下命令:

docker build \ --build-arg API_LEVEL=28 \ --build-arg IMG_TYPE=google_apis_playstore \ --build-arg ARCHITECTURE=x86 \ --tag android-emulator .

挂载外部驱动器

为减少镜像大小和构建时间,可在构建时通过INSTALL_ANDROID_SDK=0参数阻止下载和安装 SDK,并在运行时挂载外部的 Android SDK 文件夹,如:

docker build -t android-emulator --build-arg INSTALL_ANDROID_SDK=0 . docker run -it --rm --device /dev/kvm -p 5555:5555 -v /shared/android/sdk:/opt/android/ android-emulator

从 Docker Hub 拉取

在 Docker Hub 上有不同的预构建镜像,可根据 API 级别和镜像类型拉取,例如docker pull halimqarroum/docker-android:api-33

可能的应用场景

  • 应用测试:在 CI/CD 流程中,使用不同版本和配置的 Android 模拟器对应用进行自动化测试。
  • 开发调试:开发者可以在本地使用该容器快速搭建 Android 开发环境,进行应用的调试和开发。
  • 远程控制演示:结合scrcpy工具,可远程控制 Android 模拟器的屏幕,进行演示或教学。

2024 稳定版!beancount 文本文件双入口记账语言全揭秘

beancount 是一个基于文本文件实现复式记账的会计工具。简单讲,它让你用纯文本记录财务流水,像写代码一样管理个人或公司账目。适用人群:程序员、极客、喜欢文本化管理财务的人士。

项目地址:https://github.com/beancount/beancount

主要语言:Python

stars: 4.9k

核心功能

Beancount 是一种用于复式簿记的计算机语言,可让用户在文本文件中定义财务交易记录,将其读入内存,生成各种财务报告,并且提供了一个 Web 界面。

文档资料

  • 文档可在 https://beancount.github.io/docs/ 查看。
  • 文档创作在 Google Docs 上进行,可申请访问或对单个文档发表评论来参与贡献。所有源文档的索引可在 http://furius.ca/beancount/doc/index 查看。
  • 有专门的 Beancount 邮件列表:https://groups.google.com/forum/#!forum/beancount ,可在此提问,以便其他人能共享回复内容。关于命令行会计的更广泛讨论也会在 Ledger 邮件列表 https://groups.google.com/forum/#!forum/ledger-cli 中进行。

下载和安装

可从 Github 上的官方 Git 仓库获取源代码:https://github.com/beancount/beancount/ 。更多详细安装信息可查看 http://furius.ca/beancount/doc/install 。

版本情况

  • 版本 3:自 2024 年 6 月起为当前稳定版本,建议使用。该版本在 v2 基础上进行了精简,v2 分支中包含的大部分工具已迁移到 Github 上各自独立的项目中。
  • 版本 2:是 Beancount 的上一个稳定版本,在 2020 年至 2024 年处于维护模式,现在已冻结且过时。它是对第一个版本的完全重写,引入了许多约束和新语法等。
  • 版本 1:是 Beancount 的原始版本,2013 年停止开发。此初始版本旨在与 Ledger 相似并部分兼容,不建议使用。

问题反馈

可在 Github 项目页面提交问题工单:https://github.com/beancount/beancount/issues

优势和应用场景

  • 优势:以文本文件记录交易,简单易管理和备份;开源且遵循自由开放的理念,用户可根据需求定制;有稳定版本支持,且开发者持续投入精力完善。
  • 应用场景:适用于个人财务管理,记录日常收支;也可用于小型企业或基金会的财务记账和报告生成。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/22 14:01:40

AI如何帮你快速生成LaTeX数学符号?

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个LaTeX符号AI助手,功能包括:1. 支持手写数学公式识别并自动转换为LaTeX代码 2. 提供常见数学符号的快捷输入面板 3. 智能补全复杂公式结构 4. 支持语…

作者头像 李华
网站建设 2026/2/24 21:48:09

ResNet18官方版镜像上线|40MB小模型,覆盖1000类场景识别

ResNet18官方版镜像上线|40MB小模型,覆盖1000类场景识别 📖 项目简介:轻量级通用图像分类的工程化实践 在边缘计算、私有化部署和低延迟推理需求日益增长的今天,一个稳定、小巧、无需联网验证的图像分类模型成为众多AI…

作者头像 李华
网站建设 2026/2/25 22:20:20

AI万能分类器应用案例:社交媒体舆情分析系统

AI万能分类器应用案例:社交媒体舆情分析系统 1. 引言:AI万能分类器的现实价值 在信息爆炸的社交媒体时代,企业、政府机构和品牌方每天面临海量用户评论、帖子和反馈。如何从这些非结构化文本中快速识别公众情绪、提取关键议题并做出响应&am…

作者头像 李华
网站建设 2026/2/21 15:35:27

ResNet18深度解析与工业级应用|基于TorchVision原生模型

ResNet18深度解析与工业级应用|基于TorchVision原生模型ResNet18 是 TorchVision 官方提供的经典轻量级图像分类模型,凭借其稳定的残差结构、40MB 小体积和毫秒级推理能力,已成为工业部署中的首选方案之一。本文将从原理到实践,全…

作者头像 李华
网站建设 2026/2/23 5:55:45

AI万能分类器部署实战:多GPU并行推理配置详解

AI万能分类器部署实战:多GPU并行推理配置详解 1. 背景与应用场景 随着企业对非结构化文本数据的处理需求日益增长,传统基于监督学习的文本分类方法面临标注成本高、迭代周期长、泛化能力弱等现实挑战。尤其在工单系统、客服对话、舆情监控等场景中&…

作者头像 李华
网站建设 2026/2/21 15:47:34

基于ResNet18的万物识别实践|高稳定性图像分类方案

基于ResNet18的万物识别实践|高稳定性图像分类方案 在当前AI应用快速落地的背景下,轻量级、高稳定、无需联网依赖的本地化图像识别能力正成为边缘计算与私有部署场景的核心需求。本文将深入解析一款基于 TorchVision 官方 ResNet-18 模型 构建的通用物体…

作者头像 李华