Files
redroid-doc/deploy/README.md
2022-07-15 15:15:54 +08:00

2.3 KiB

Deploy redroid

redroid should capable to run on any linux environment as long as the required kernel features avaiable (binderfs etc.). Fortunately, these kernel features are already included in some linux distributions (maybe need seperate kernel / modules package). redroid also provide redroid-modules repo to support some linux distrutions without those kernel features. And as last resort, custom kernels are always capable.

madatory kernel features

  • binderfs
  • ashmem / memfd
  • ipv6
  • ion / dma_heap
  • 4KB page size
  • ...

deployment per distro / platform

general deploy redroid instructions

## install docker https://docs.docker.com/engine/install/#server

## make sure required kernel features enabled


## 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 without `ashmem` (removed since linux 5.18)
## NOTE: plan to enable `memfd` by default
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 \
    --pull always \
    -v ~/data12_64only:/data \
    -p 5555:5555 \
    --name redroid12_64only \
    redroid/redroid:12.0.0_64only-latest \