Я написал собственный модуль Azure IoT Edge (Node.js), который должен взаимодействовать с сервером WebSocket, работающим на хосте (не в контейнере).
Azure IoT Edge
Как открыть контейнер модуля IoT Edge на порту 9090, чтобы разрешить эту связь?
9090
Я получил это для работы, добавив это в мои опции создания для моего модуля в файле json развертывания:
"createOptions": { "ExposedPorts": { "9090/tcp": {} } }
createOptions разрешает вход, когда процесс / контейнер, работающий на хосте, может взаимодействовать с модулем через открытый порт.
Для выхода на конечную точку на хосте ничего не нужно. Можно просто использовать hostIP: someport.
Для исходящих соединений (от вашего модуля до какой-либо другой конечной точки) вам не нужно ничего настраивать на модуле. Это должно работать из коробки. Конечно, на вашем хосте могут быть запущены брандмауэры и т. Д.