openstf / stf

Control and manage Android devices from your browser.
https://openstf.io
Other
13.4k stars 2.8k forks source link

both appium and stf docker run in same machine #990

Open ktoya opened 6 years ago

ktoya commented 6 years ago

Hello,

below are my dockers running in my ubuntu 18.04 machine: rethinkdb:2.3 sorccu/adb:latest openstf/latest

scripts to run:

start db

docker run -d --name rethinkdb -v /srv/rethinkdb:/data --net host rethinkdb rethinkdb --bind all --cache-size 8192 --http-port 8090

start adb service

docker run -d --name adbd --privileged -v /dev/bus/usb:/dev/bus/usb --net host sorccu/adb:latest

start stf

docker run -d --name stf --net host openstf/stf stf local --public-ip 192.168.1.70

and it is running perfectly, now I need to add appium to anther docker using appium/appium:latest

scripts: docker run --privileged -d -p 4723:4723 -v /dev/bus/usb:/dev/bus/usb --name container-appium

It looks like the stf is using sorccu/adb as default adb server. the problem is the appium is using the adb in its own container. when the adb in appium started, the adb in sorccu/adbd will be disconnected. is there any command to change the adb in stf docker to connect to appium container other than sorccu/adb? or to change the adb of container-appium to connect to sorccu/adb? or is there any better ideas?

Thanks

denis99999 commented 6 years ago

Hi @ktoya, I beleive the STF provider tries to connect to an ADB server on the 5037 port by default, so it means you can launch the ADB server of your choice.

In your case, a simple solution should be to don't launch the sorccu/adb container, and to launch your appium container (i.e. including ADB server) before the STF one, I think it should work !

Nevertheless, a clean solution from my point of view should be to remove the ADB server from your appium container and to use the sorccu/adb container for that purpose.

Slavianin commented 5 years ago

Hi @ktoya , are you resolved its problem ?