Почему я не могу видеть мое мобильное устройство на devtools во время работы ADB на контейнере Docker?

Я настоятельно рекомендую вам рассмотреть autossh . У него есть определенные эвристики, которые позволят ему определить, является ли потеря соединения основной причиной, и снизят частоту попыток повторного подключения. Кроме того, он контролирует соединение с помощью дополнительных туннелей, что делает его очень полезным для сценариев, подобных тому, о котором вы спрашиваете.

Если вы, например, используете Ubuntu, вы можете выполнить поиск в Интернете по запросу autossh upstart , чтобы найти несколько полезных примеров того, как настроить Ubuntu так, чтобы туннель постоянно поддерживался.

Я использую это, чтобы постоянно поддерживать открытое туннельное соединение с моим сервером для определенных служб.

1
13.02.2019, 10:55
1 ответ

Я добился этого:

1)Открытие портов :5037, 5554, 5555 и 5900 (вместо 5037 ).

2)Запуск socatвнутри контейнера на открытых портах, передав IP-адрес контейнера (, вы можете поместить его в файл точки входа или запустить перед другими командами):

(при условии, что IP-адрес 172.23.0.2)

socat tcp-listen:5037,bind=172.23.0.2,fork tcp:127.0.0.1:5037 &
socat tcp-listen:5554,bind=172.23.0.2,fork tcp:127.0.0.1:5554 &
socat tcp-listen:5555,bind=172.23.0.2,fork tcp:127.0.0.1:5555 &

Если вы определяете имя хоста для контейнера (docker run --hostname...), вы можете использовать имя хоста вместо IP-адреса (, что лучше, потому что IP-адрес может измениться )в команде socat. Например, если имя хоста android-emulator, вы можете запустить приведенные выше команды как:

socat tcp-listen:5037,bind=android-emulator,fork tcp:127.0.0.1:5037 &
socat tcp-listen:5554,bind=android-emulator,fork tcp:127.0.0.1:5554 &
socat tcp-listen:5555,bind=android-emulator,fork tcp:127.0.0.1:5555 &

3)Добавление IP-адреса док-контейнера для проверки Chrome в Configure...(, например. :172.23.0.2:5037, используя здесь ip, потому что он должен быть виден за пределами контейнера ).

0
28.01.2020, 00:19

Теги

Похожие вопросы