remote-android / redroid-doc

redroid (Remote-Android) is a multi-arch, GPU enabled, Android in Cloud solution. Track issues / docs here
4.21k stars 300 forks source link

Unable to Connect via ADB #761

Open TopHatProductions115new opened 5 days ago

TopHatProductions115new commented 5 days ago

I've been trying to run redroid for a while, but always get stuck when attempting to connect via ADB. The connection times out, and nothing appears in the live container logs. I'm not sure if this affects things, but here are the details for the Docker host (Docker Info):

➜  ~ sudo docker info
[sudo] password for tophatproductions115:
Client:
 Version:    27.3.1
 Context:    default
 Debug Mode: false
 Plugins:
  compose: Docker Compose (Docker Inc.)
    Version:  2.29.7
    Path:     /usr/lib/docker/cli-plugins/docker-compose

Server:
 Containers: 14
  Running: 14
  Paused: 0
  Stopped: 0
 Images: 16
 Server Version: 27.3.1
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Using metacopy: true
  Native Overlay Diff: false
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 7f7fdf5fed64eb6a7caf99b3e12efcf9d60e311c.m
 runc version:
 init version: de40ad0
 Security Options:
  seccomp
   Profile: builtin
  cgroupns
 Kernel Version: 6.11.1-artix1-1
 Operating System: Artix Linux
 OSType: linux
 Architecture: x86_64
 CPUs: 16
 Total Memory: 94.39GiB

I'm using the default kernel, and have been loading binder_linux-dkms with this command: modprobe binder_linux devices="binder,hwbinder,vndbinder". As for ashmem, I've been seeing posts that state it's being replaced with memfd. I added androidboot.use_memfd: TRUE to my compose file as a result. However, I've been unable to get a working instance so far.

Before I go further, I'd like to make sure that I'm not running with incompatible hardware. Does redroid support Intel processors that are older than Intel IvyBridge (like Intel Westmere)? I can provide my compose file and debugging info (docker exec -it <container> sh, ps -A, logcat, dmesg -T) if necessary.

zhouziyang commented 2 days ago

Not sure about Artix Linux. redroid require binderfs support (NOT just binder nodes).

For CPU compatibility, try setup a Ubuntu VM and test there (try downgrade redroid version if run into problems).