前言
前几天申请的招商VISA信用卡下来了,为了想撸一把各大厂商的活动,在找活动的时候记起来之前因没信用卡而无法注册的ORACLE
,就是甲骨文公司,Java就是人家的.本来就是云服务的领头人物,前几年为了抢占市场,推出了没人能领取两台的所谓永久免费的X86海外云主机,后来又推出了基于ARM架构个人能免费领取一个4核24G的永久ARM服务器,还是挺香的.更多关于此活动的内容请参考甲骨云官方说明,本文不再赘述 !
申请到ARM服务器
之后呢想弄几个好玩的项目部署上,最起码不浪费4核24G内存,忽见 redroid
提供了 arm
版的 android
镜像,心想不过转译岂不爽飞,遂查资料开搞。
技术栈
本次采用甲骨文日本大阪的ARM服务器,四核Ampere A1
,根据官方提供资源,你可以开通两台双核12G的服务器,我嫌好的IP不好刷,所以干脆弄了一整个服务器
服务器系统选择的是Ubuntu 22.04
并不是MiNi
版,推荐安装此版本
Android
容器方面,采用 redroid
的 Android 8.1 arm64
镜像,这是经过实测的最佳版本。
环境配置
首先是安装Docker
,因为官方的教程很详细,所以我也不再重复造轮子,跟着来就行https://docs.docker.com/engine/install/ubuntu/
接下来请执行系统更新指令,尝试将系统内核更新至最新
sudo apt-get update
更新结束之后,使用uname -r
查看系统内核版本,我自己的是5.15.0-1016-oracle
请务必保持内核版本>=5
,否则可能无法正常进行
接下来补齐内核模块,请确保此项正常运行,否则将无法启动Android
容器
apt install linux-modules-extra-`uname -r`
modprobe binder_linux devices="binder,hwbinder,vndbinder"
modprobe ashmem_linux
执行到这一步无报错的话基本属于正常了
启动容器
条件具备之后,启动即可:
docker run -itd --rm --memory-swappiness=0 \
--privileged --pull always \
-v /data:/data \
-p 5556:5555 \
redroid/redroid:8.1.0-arm64 \
androidboot.hardware=mt6891 ro.secure=0 ro.boot.hwc=GLOBAL ro.ril.oem.imei=861503068361145 ro.ril.oem.imei1=861503068361145 ro.ril.oem.imei2=861503068361148 ro.ril.miui.imei0=861503068361148 ro.product.manufacturer=Xiaomi ro.build.product=chopin \
redroid.width=720 redroid.height=1280 \
redroid.gpu.mode=guest
关于此镜像的更多解释请参考官方Docker项目,链接在末尾
玩法
启动之后就可以使用ADB命令玩耍了,也可以使用秋之盒
这类的第三方工具玩
在远程控制方面,我们可以使用scrcpy
直奔 Releases
页面下载 zip
格式的文件,解压后使用adb
命令连接上容器,然后在cmd
中.\scrcpy.exe
即可。
列出一些关于ADB的常用命令
// 查看连接状态
adb devices
// adb链接设备
adb connect ip:端口
// 安装软件
adb install 软件路径
友情链接&参考资料
甲骨文 ARM 机原生运行 Android 云手机实践
remote-android / redroid-doc
scrcpy开源远程工具
秋之盒官方
Docker官方文档
甲骨文活动地址