本文介绍在 x86_64 架构的 Linux 服务器上部署 Redroid(容器化安卓),并利用社区脚本实现对 ARM 应用的转译支持。
一、环境准备
在开始之前,请确保你拥有一台配置符合要求的云服务器。
- 建议配置:Linux 服务器,x86 架构。如果是 ARM 架构服务器则性能更佳,无需转译。
- 基础环境:确保已安装 Python3、pip3 和 git。
- 容器环境:已安装 Docker。
操作系统:Ubuntu 20.04 (内核版本 5.4)
⚠️ 特别注意:经测试,Ubuntu 22.04 (内核 5.10) 可能会出现在内核模块库找不到对应内核模块的情况。Redroid 官方文档也多以 20.04 为例,建议严格使用 Ubuntu 20.04 以避免踩坑。
二、核心部署步骤
1. 安装内核模块(关键步骤)
Redroid 依赖特定的内核模块来运行。请依次执行以下命令:
# 安装额外的内核模块库
apt install linux-modules-extra-$(uname -r)
# 加载 binder 和 ashmem 模块
modprobe binder_linux devices="binder,hwbinder,vndbinder"
modprobe ashmem_linux
2. 验证模块状态
执行以下命令检查模块是否加载成功:
grep binder /proc/filesystems
grep ashmem /proc/misc
- 成功标志:返回类似
nodev binder或xxx ashmem的内容。 - 失败标志:如果返回为空,则说明配置有问题,请检查内核模块是否正确加载成功。
3. 配置 Python 环境与脚本
接下来,我们需要使用一个强大的社区脚本来自动化构建镜像。
# 1. 拉取 GitHub 项目
git clone https://github.com/ayasa520/redroid-script/
cd redroid-script
# 2. 安装脚本依赖库 (requests, tqdm)
pip3 install -r requirements.txt
4. 构建 Redroid 镜像
执行 Python 脚本构建镜像。这里我们以 Android 11.0.0 为例,并开启 Magisk (Root) 和 NDK (ARM 转译) 支持。
python3 redroid.py -a 11.0.0 -mn
参数解析:
| 参数 | 说明 |
|---|---|
-a 11.0.0 | 指定安卓版本 |
-m | 注入 Magisk,获取 Root 权限 |


