update deploy instructions on Ubuntu

This commit is contained in:
Ziyang Zhou
2023-10-17 20:12:19 +08:00
parent f31d11bd24
commit 53bc093797
2 changed files with 38 additions and 40 deletions

View File

@@ -37,15 +37,15 @@ resort, it's always capable via customizing Linux kernel.
**general deploy redroid instructions** **general deploy redroid instructions**
``` ```
## install docker https://docs.docker.com/engine/install/#server ## install docker https://docs.docker.com/engine/install/#server
## or use podman
## make sure required kernel features enabled; Check details on per distro page ## make sure required kernel features enabled; Check details on per distro page
## make sure cgroup v1 present (some latest OS may only mount cgroup v2, ubuntu 22.04 etc.) ## make sure cgroup v1 mounted if running redroid 8 / 9
## add `systemd.unified_cgroup_hierarchy=0` to kernel cmdline ## add `systemd.unified_cgroup_hierarchy=0` to kernel cmdline
## disable SELinux if present ## disable SELinux if present
## setenforce 0 setenforce 0
## running redroid ## running redroid
docker run -itd --rm --privileged \ docker run -itd --rm --privileged \
@@ -72,24 +72,12 @@ scrcpy -s localhost:5555
### typically running scrcpy on your local PC ### typically running scrcpy on your local PC
## running without `ashmem` (removed since linux 5.18) ## running 64bit-only redroid
## NOTE: plan to enable `memfd` by default ## only `aarch64` supported by some Arm platforms, the 64only image required here
docker run -itd --rm --privileged \
--pull always \
-v ~/data11:/data \
-p 5555:5555 \
--name redroid11 \
redroid/redroid:11.0.0-latest \
androidboot.use_memfd=1
## running 64bit-only redroid (only redroid12 published)
## some ARM CPUs only support 64bit mode, or just want to remove legacy 32bit runtime
docker run -itd --rm --privileged \ docker run -itd --rm --privileged \
--pull always \ --pull always \
-v ~/data12_64only:/data \ -v ~/data12_64only:/data \
-p 5555:5555 \ -p 5555:5555 \
--name redroid12_64only \ --name redroid12_64only \
redroid/redroid:12.0.0_64only-latest \ redroid/redroid:12.0.0_64only-latest \
``` ```

View File

@@ -1,33 +1,16 @@
# Deploy redroid on ubuntu # Deploy redroid on ubuntu
``` ```
# for 5.0+ kernel ##############################
## Ubuntu 22.04
##############################
## Android required kernel features are packaged in `linux-modules-extra-xxx` ## install required kernel modules
apt install linux-modules-extra-`uname -r` apt install linux-modules-extra-`uname -r`
modprobe binder_linux devices="binder,hwbinder,vndbinder" modprobe binder_linux devices="binder,hwbinder,vndbinder"
### optional module (removed since 5.18)
modprobe ashmem_linux modprobe ashmem_linux
## auto load modules ## running redroid
cat /etc/modules-load.d/redroid.conf
binder_linux
ashmem_linux
cat /etc/modprobe.d/redroid.conf
options binder_linux devices="binder,hwbinder,vndbinder"
# for kernel version before 5.0
## option A:
### upgrade to 5.0+ kernel
### https://wiki.ubuntu.com/Kernel/LTSEnablementStack
## option B:
### check https://github.com/remote-android/redroid-modules
### to install out of tree `binderfs` / `ashmem` kernel modules
# running redroid
docker run -itd --rm --privileged \ docker run -itd --rm --privileged \
--pull always \ --pull always \
-v ~/data11:/data \ -v ~/data11:/data \
@@ -35,4 +18,31 @@ docker run -itd --rm --privileged \
--name redroid11 \ --name redroid11 \
redroid/redroid:11.0.0-latest redroid/redroid:11.0.0-latest
##############################
## Ubuntu 20.04
##############################
## install required kernel modules
apt install linux-modules-extra-`uname -r`
modprobe binder_linux devices="binder,hwbinder,vndbinder"
### optional module (removed since 5.18)
modprobe ashmem_linux
## running redroid normally
##############################
## Ubuntu 18.04
##############################
## upgrade kernel (5.0+)
apt install linux-generic-hwe-18.04
## install required kernel modules
modprobe binder_linux devices="binder,hwbinder,vndbinder"
### optional module (removed since 5.18)
modprobe ashmem_linux
## running redroid normally
``` ```