redroid should capable to run on any Linux environment as long as the
required kernel features available (binderfs
etc.). Fortunately, these
kernel features are already enabled in some Linux distros
(extra packages might needed). redroid also provides
redroid-modules repo
to support those distros without the required kernel features. And as last
resort, it's always capable via customizing Linux kernel.
madatory kernel features
binderfs
ashmem
/memfd
IPv6
ION
/DMA-BUF Heaps
- 4KB page size
- ...
deployment per distro / platform
- Alibaba-Cloud-Linux
- Amazon-Linux
- Arch-Linux
- CentOS
- Debian
- Deepin
- Fedora
- Gentoo
- Kubernetes
- LXC
- Mint
- OpenEuler
- PopOS
- Ubuntu
- WSL
general deploy redroid instructions
## install docker https://docs.docker.com/engine/install/#server
## or use podman
## make sure required kernel features enabled; Check details on per distro page
## disable SELinux if present
setenforce 0
## running redroid
docker run -itd --rm --privileged \
--pull always \
-v ~/data11:/data \
-p 5555:5555 \
--name redroid11 \
redroid/redroid:11.0.0-latest
### Explanation:
### --pull always -- use latest image
### -v ~/data11:/data -- mount data partition
### -p 5555:5555 -- expose adb port
## install adb https://developer.android.com/studio#downloads
adb connect localhost:5555
### NOTE: change localhost to IP if running redroid remotely
## view redroid screen
## install scrcpy https://github.com/Genymobile/scrcpy/blob/master/README.md#get-the-app
scrcpy -s localhost:5555
### NOTE: change localhost to IP if running redroid remotely
### typically running scrcpy on your local PC
## running 64bit-only redroid
## only `aarch64` supported by some Arm platforms, the 64only image required here
docker run -itd --rm --privileged \
--pull always \
-v ~/data12_64only:/data \
-p 5555:5555 \
--name redroid12_64only \
redroid/redroid:12.0.0_64only-latest \