技术揭秘:如何用Docker在服务器上“手搓”百台安卓云手机?"

admin 2026-10-20 16:41:48 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

cover_image

技术揭秘:如何用Docker在服务器上“手搓”百台安卓云手机?

原创

衡水铁头哥
衡水铁头哥

铁军哥

2026年6月22日 07:41
北京

在小说阅读器读本章

去阅读

我们之前曾经介绍过Android项目,就是在ESXi服务器上直接装了一台Android虚拟机(既然Win11不支持Android,那就直接装一台Android-X86吧),当时的系统版本比较低,其实到现在也不高。

最近几年吧,跨境电商异常火爆,这就衍生了一些特殊需求,比如说虚拟手机,或者叫云手机,用途大家都清楚。当然,很多云厂商也都提供了云手机的服务,比如阿里云的无影云手机:

当然,以上只是基础资源的价格,不包含公网服务。

如果想在本地用,也有现成的产品,听说比较多的应该是魔云腾,不过也不便宜,8核RK3588处理器+16 GB运行内存+256 GB系统盘的价格要1588元,有点小贵。

不过既然是云手机,那GitHub必然有开源项目,我们一搜就能搜到redroid(Remote anDroid)这个项目,这是一个支持GPU加速的AIC(Android In Cloud,云端安卓)解决方案,支持ARM64和AMD64架构,可以在x86服务器上运行安卓系统;支持在Linux主机中以Docker、podman、k8s等方式启动多个实例。

安装也很简单,解决好环境依赖之后,直接拉取docker容器,然后运行就可以了。

接下来,我们来实操一下。

首先,我们需要用到一台Ubuntu系统(Ubuntu 22.04 LTS服务器版本安装演示),并且安装好Docker引擎(Ubuntu 22.04.4安装Docker引擎)。

然后,检查并安装所依赖内核模块:

apt install linux-modules-extra-$(uname -r)modprobe binder_linux devices=\"binder,hwbinder,vndbinder\"

如果系统内核低于5.18,还需要加载ashmem\_linux模块。

modprobe ashmem_linux

目前最新的Android系统是15,那接下来,我们先运行一个64位的Android 14系统,命令如下:

docker run -itd --rm --privileged \\    --pull always \\    -v ~/data14:/data \\    -p 5555:5555 \\    --name redroid14 \\    redroid/redroid:14.0.0_64only-latest

经过前面一段时间对Docker的学习(Docker run命令完全指南:一文掌握Docker run的隐藏功能与避坑指南),我们理解一下上面的配置:

其中,-itd是-i(--interactive)、-t(--tty)、-d(--detach)三个参数的组合。-i用于保持容器的标准输入(STDIN)开放,允许与容器交互;-t用于分配一个伪终端(TTY),使容器的输入/输出行为类似于本地终端;-d用于容器在后台运行(守护模式),并返回容器 ID。

--rm表示退出容器时自动移除该容器。

--privileged表示赋予容器完全特权,使其可以访问所有主机设备(/dev下的硬件设备),并绕过Linux安全机制。

--pull always表示运行时Docker会强制从镜像仓库拉取最新版本的镜像文件,覆盖本地缓存的旧版本镜像,而不是使用本地镜像。

-v ~/data14:/data表示将主机的~/data14目录挂载到容器内的/data路径,实现双向数据共享。

-p 5555:5555表示将容器内的5555端口发布到主机的5555端口,我们前面学习ADB的时候就知道了这个5555端口用于ADB远程调试()。

--name redroid14表示指定容器名称为redroid14,后续可以通过该名称管理此容器。

redroid/redroid:14.0.0\_64only-latest则是我们需要拉取的docker镜像名称,跟项目简介的标签相对应,对应关系如下:

Android 15 (redroid/redroid:15.0.0-latest)Android 15 64bit only (redroid/redroid:15.0.0_64only-latest)Android 14 (redroid/redroid:14.0.0-latest)Android 14 64bit only (redroid/redroid:14.0.0_64only-latest)Android 13 (redroid/redroid:13.0.0-latest)Android 13 64bit only (redroid/redroid:13.0.0_64only-latest)Android 12 (redroid/redroid:12.0.0-latest)Android 12 64bit only (redroid/redroid:12.0.0_64only-latest)Android 11 (redroid/redroid:11.0.0-latest)Android 10 (redroid/redroid:10.0.0-latest)Android 9 (redroid/redroid:9.0.0-latest)Android 8.1 (redroid/redroid:8.1.0-latest)

等待命令运行完成后,会自动拉起Docker容器。查看Docker镜像和容器信息,可以看到本次下载的Android 14镜像的文件大小为709 MB,解压之后有1.65 GB;运行中的Docker容器映射了TCP端口5555。

接下来,我们就可以用scrcpy工具来连接redroid云手机了(不使用USB,Windows电脑如何通过网络操控Android手机?)。首先使用ADB连接手机,然后用scrcpy远程到手机上。

使用Scrcpy工具远程操作:

adb connect 192.168.1.77:5555scrcpy -s 192.168.1.77:5555

在弹出的桌面窗口中查看系统信息,显示Android版本为14,型号为redroid14\_x86\_64\_only。

然后我们试着装个小红书。

安装没有问题,可以用。

当然,系统官方给出的这种一次性云手机使用方式我们并不喜欢,那我们还可以使用下载好的镜像直接拉起云手机容器,比如用本地镜像拉起一台Android 15的云手机。

docker run -itd --rm --privileged \\    -v ~/data15:/data \\    -p 5556:5555 \\    --name redroid15 \\    redroid/redroid:15.0.0_64only-latest

再连接试一下。

当然,我们还可以使用Escrcpy工具,能以界面形式展示连接信息。

点击开始镜像按钮就可以开始操作了。

最后,我们看一下系统资源使用情况。

当运行两台云手机时,CPU利用率约为160 %,系统负载在7核左右,内存使用量为3.47 GB。

然后我们停掉Android 15这台手机。

可以看到,因为配置了--rm参数,所以在停止容器时,该容器也被自动删除了,再看一下系统资源使用情况。

当运行一台云手机时,CPU利用率约为150 %,但是系统负载降到了5核左右,内存使用量为2.54 GB。

最后,我们再停掉Android 14这台手机。

可以看到,现在没有容器在运行了,而且都被自动删除了,再看一下系统资源使用情况。

当没有云手机运行时,CPU利用率约为10 %,但是系统负载显示为1核左右,内存使用量为583 MB。

由此,我们推算,一台云手机运行的资源占用大约为2核CPU、1.5 GB内存。这么看来,自己在电脑上装一台虚拟机也能玩一玩了。

\\\推荐阅读\\\

我们的WireGuard管理系统支持手机电脑了!全平台终端配置,支持扫码连接,一键搞定

保姆级教程:一条命令部署OpenVPN管理系统V4版,支持Win/Mac/安卓/iOS全平台接入

成本省下99.7%!用40元的腾讯云服务器自建IPsecVPN,成功对接企业级飞塔防火墙

别再乱选VPN了!实测数据告诉你:为什么L2TP是个“坑”

终极进化:当swanctl遇上FRR,让你的Linux加密隧道化身SD-WAN雏形

流量指哪打哪!手把手教你用静态Segment List玩转SRv6流量工程

嫌SRv6报文太胖跑不动?带你在Ubuntu+FRR实战uSID微段压缩

22秒跑出密码!算力碾压再升级,揭秘WiFi6+WPA3的致命短板

嫌一键部署不过瘾?带你手搓Hermes智能体,主打一个通透

十倍性能提升!Ubuntu 26.04深度实测:当VPP遇上OpenVPN,带宽直接冲破 6.5Gbps!

性能暴涨670 %!当WireGuard遇上VPP,带宽直冲7.4 Gbps!

手机也能跑DeepSeek-R1/Qwen3了:零成本搭建AI推理平台

2048卡昇腾910C集群算力集群交付工程手册

2048卡H100算力中心100G无阻塞存储网建设方案


埃及情报总局(GIS)概况" 网络安全文章

埃及情报总局(GIS)概况"

本文系统介绍了埃及情报总局(GIS),揭示其远超普通情报机构的权力网络。报告指出,GIS直属总统,自1954年成立后,已从早期的外交秘密行动演变为集国内监控、媒体操控与地区调停于一体的核心权力支柱。其下属的技术研究局(TRD)采购先进间谍软件实施通信监控,并通过控股联合媒体服务集团(UMS)塑造舆论。在加沙、苏丹、利比亚等地区冲突中,GIS积极进行调停与代理人支持。报告认为,在塞西长期执政与区域动荡背景下,GIS对埃及政治、经济和社会的影响力将持续深化。
网安早报【20260622】148期" 网络安全文章

网安早报【20260622】148期"

本期网安早报涵盖20项全球安全动态,包括印度法院维持Telegram封锁、Google侧载应用新规、保加利亚批准间谍软件出口、美国防法案强化网络安全要求、ShinyHunters团伙持续攻击SaaS平台、朝鲜IT求职诈骗、AryStinger僵尸网络感染路由器、PrinzEugen勒索软件策略、Gentlemen团伙禁用EDR进程、CyberSentinelAIv3.0集成工具实现自主渗透测试等关键事件,涉及政策监管、威胁活动、技术漏洞及防御方案多维度内容。
评论:0   参与:  0