Ho creato un'immagine Docker che contiene l'SDK di Android e sto cercando di esporre il mio telefono Android in un contenitore che esegue questa immagine. Così ho usato la bandiera --privileged e montate le periferiche USB come segue:Connessione a un dispositivo Android USB in un contenitore Docker tramite adb
$ docker run --privileged -v /dev/bus/usb:/dev/bus/usb -d -P my-android:0.0.1
Tuttavia, quando si esegue adb devices, non mi mostra il dispositivo USB
[email protected]:~/Android/Sdk/platform-tools$ ./adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
[email protected]:~/Android/Sdk/platform-tools$
lsusb all'interno del contenitore elenca il dispositivo:
[email protected]:~$ lsusb
...
Bus 002 Device 017: ID 04e8:6866 Samsung Electronics Co., Ltd GT-I9300 Phone [Galaxy S III] (debugging mode)
il dispositivo è comunque visibile nell'ospite:
⇒ ./adb devices
List of devices attached
4d11abcd65b74045 device
Host OS versione
$ uname -a
Linux ananya 3.16.0-33-generiC#44~14.04.1-Ubuntu SMP Fri Mar 13 10:33:29 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
Docker
Quale potrebbe essere il problema?
non credo che il demone adb in esecuzione nel dispositivo può essere collegato a due server adb. Prova a scollegarlo dall'adb della macchina host e quindi collegalo all'adb della finestra mobile. – jlhonora
Fantastico! Questa sembra essere la ragione. Ho disconnesso la macchina host adb e ha funzionato bene. Grazie! È possibile inviare una risposta, in modo che io possa contrassegnarlo come la risposta giusta. – buzypi