Как подключить только одно USB-устройство к Docker-контейнеру

Я использую Docker для запуска тестов Android. Я использую несколько контейнеров и устройств Android для параллельного запуска тестов, но при перенаправлении USB-устройств в контейнер Docker я столкнулся с проблемой.

Я монтирую устройство как:

docker run -it --name MVE1 --privileged -v /dev/bus/usb/001/023:/dev/bus/usb/001/023

Я пытаюсь смонтировать только одно устройство, но при запуске adb Устройства внутри контейнера, в нем перечислены все устройства, которые подключены к хосту.

Не повезло даже с --device option или:

docker run -it --name MVE1 --device=/dev/bus/usb/001/023:/dev/bus/usb/001/023

Расположение USB-устройств на моем хосте /dev/bus/usb/: Есть два bus 001 а также 002 устройства, которые я использую, и все они подключены к 001 bus,

Почему Docker монтирует все устройства, подключенные к хосту? 001 bus когда я пытался подключить только одно устройство?

Я делаю что-то не так?

1 ответ

Решение

Я смог понять это. Если мы запускаем в привилегированном режиме, все шины USB доступны для контейнера.

Нам просто нужно удалить ненужную шину из контейнера. Хотя том синхронизирован, это удаление не повлияет на шину USB в хосте Docker.

Другие вопросы по тегам