Last active
February 12, 2026 09:09
-
-
Save labibmuhajir/2c55effaf90b80d0fdb6a102bdae2009 to your computer and use it in GitHub Desktop.
docker compose redroid
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Redroid Setup Documentation | |
| # 1. Image Creation Reference: ayasa520/redroid-script https://github.com/ayasa520/redroid-script | |
| # Follow the link above to build your custom Redroid image (NDK, Magisk, etc.). | |
| # 2. System Compatibility | |
| # Tested OS: Linux Mint 22.3 (Cinnamon 64-bit) Software: Podman 4.9.3 & Podman-compose 1.0.6 (Tested with sudo) | |
| # Prerequisites: Ensure the kernel modules for Android Binder are installed. | |
| # If /dev/binderfs is missing check with `ls /dev/binderfs`, install the required modules: | |
| # sudo apt update && sudo apt install linux-modules-extra-$(uname -r) | |
| # 3. Kernel Module Activation To enable Binder devices, run the following commands: | |
| # # Create the binderfs mount point | |
| # sudo mkdir -p /dev/binderfs | |
| # # Mount binderfs | |
| # sudo mount -t binder binder /dev/binderfs | |
| # # (Optional) If binder_linux is not loaded, load it with specific devices | |
| # sudo modprobe binder_linux devices="binder,hwbinder,vndbinder" | |
| # 4. Verification Ensure ls /dev/binderfs displays the following nodes: | |
| # binder, binder-control, binder_logs, features, hwbinder, vndbinder. | |
| version: "3.8" | |
| services: | |
| # VARIAN 1: TABLET (1080p, 160 DPI) | |
| tab: | |
| image: localhost/redroid/redroid:11.0.0_ndk_magisk_widevine | |
| privileged: true | |
| pull_policy: never | |
| container_name: tab | |
| network_mode: bridge | |
| ports: | |
| - "5555:5555" | |
| volumes: | |
| - ~/Development/emudata/tablet:/data | |
| deploy: | |
| resources: | |
| limits: | |
| memory: 2G | |
| devices: | |
| - /dev/binderfs/binder:/dev/binder | |
| - /dev/binderfs/hwbinder:/dev/hwbinder | |
| - /dev/binderfs/vndbinder:/dev/vndbinder | |
| command: | |
| - ro.product.cpu.abilist=x86_64,arm64-v8a,x86,armeabi-v7a,armeabi | |
| - ro.product.cpu.abilist64=x86_64,arm64-v8a | |
| - ro.product.cpu.abilist32=x86,armeabi-v7a,armeabi | |
| - ro.dalvik.vm.isa.arm=x86 | |
| - ro.dalvik.vm.isa.arm64=x86_64 | |
| - ro.enable.native.bridge.exec=1 | |
| - ro.vendor.enable.native.bridge.exec=1 | |
| - ro.vendor.enable.native.bridge.exec64=1 | |
| - ro.dalvik.vm.native.bridge=libndk_translation.so | |
| - ro.ndk_translation.version=0.2.3 | |
| - androidboot.redroid_width=1920 | |
| - androidboot.redroid_height=1080 | |
| - androidboot.redroid_dpi=160 | |
| - androidboot.redroid_fps=60 | |
| # VARIAN 2: PHONE | |
| phone: | |
| image: localhost/redroid/redroid:11.0.0_ndk_magisk_widevine | |
| privileged: true | |
| pull_policy: never | |
| container_name: phone | |
| network_mode: bridge | |
| ports: | |
| - "5556:5555" | |
| volumes: | |
| - ~/Development/emudata/tablet:/data | |
| deploy: | |
| resources: | |
| limits: | |
| memory: 2G | |
| devices: | |
| - /dev/binderfs/binder:/dev/binder | |
| - /dev/binderfs/hwbinder:/dev/hwbinder | |
| - /dev/binderfs/vndbinder:/dev/vndbinder | |
| command: | |
| - ro.product.cpu.abilist=x86_64,arm64-v8a,x86,armeabi-v7a,armeabi | |
| - ro.product.cpu.abilist64=x86_64,arm64-v8a | |
| - ro.product.cpu.abilist32=x86,armeabi-v7a,armeabi | |
| - ro.dalvik.vm.isa.arm=x86 | |
| - ro.dalvik.vm.isa.arm64=x86_64 | |
| - ro.enable.native.bridge.exec=1 | |
| - ro.vendor.enable.native.bridge.exec=1 | |
| - ro.vendor.enable.native.bridge.exec64=1 | |
| - ro.dalvik.vm.native.bridge=libndk_translation.so | |
| - ro.ndk_translation.version=0.2.3 | |
| - androidboot.redroid_width=720 | |
| - androidboot.redroid_height=1080 | |
| - androidboot.redroid_dpi=180 | |
| - androidboot.redroid_fps=60 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment