2017-09-18 10 views
0

J'ai quelques périphériques wifi intelligents sur mon réseau que je peux voir à partir d'un script sur mon Mac. Mais en exécutant le même script depuis un conteneur Docker, ces périphériques ne sont pas visibles.Accéder à des périphériques sur le réseau local lors de l'exécution de Docker pour Mac

Je suppose que cela est lié à l'incapacité de Docker pour Mac de se connecter au réseau de l'hôte en utilisant --network host ou network_mode: host. Je suppose également que ce problème n'existerait pas sur une machine Linux mais je n'en ai pas pour tester.

Quelle est la solution de contournement?

Edit:

confirmé a bien fonctionné lors de l'exécution l'intérieur d'un virtualbox Ubuntu, mais je devrais vraiment pas développer à l'intérieur.

Répondre

1

Si vous démarrez le conteneur avec l'option réseau en tant qu'hôte, le conteneur partagera la pile réseau de l'hôte. Ainsi, tout appareil accessible depuis votre hôte doit être accessible par le conteneur.

docker run --network host ... 
+0

Merci, je vais essayer. Lorsque vous utilisez 'docker-compose' et que vous définissez' network_mode: host' pour le service, cela ne fonctionnerait pas. Est-ce prévu? – benwiz

+0

Après d'autres recherches, je suis assez confiant que ce n'est pas une solution en raison de la façon dont fonctionne Docker pour Mac. – benwiz