我有构建容器,其中包含测试应用程序所需的所有内容,期望模拟器,我希望将它们保存在我的机器中。
我使用此命令运行容器
docker run -d -p 4725:4725 -p 4723:4723 -p 5037:5037 -p 5555:5555 --privileged -v /Users/moradk/Root/automation/apk/:/root/tmp/ --name appium-offical appium-offical shell
当我在容器中运行shell命令时:
adb devices
我找不到任何设备。
否则我已经将设备包含在我的本地计算机(不是DOCKER)中,当我在本地计算机(Mac)中运行添加设备时,我得到设备名称
如何将docker连接到本地设备,我尝试运行:
adb connect 0.0.0.0:5555
将我的本地设备连接到docker,但不起作用,
有什么建议吗?
谢谢大家。
答案 0 :(得分:2)
您应在docker run命令中删除“ -p 5037:5037”
然后在docker容器中建立一个隧道:
ssh -L 6037:localhost:5037 -N -g username@host_ip_address -f
您可以通过以下方式访问主机adb:
adb -H 127.0.0.1 -P 6037 devices
您也可以在ssh隧道中使用默认端口5037,这对我来说很有效。