无法使用NetworkId将Azure IoT Edge模块启动到指定的docker网络中

时间:2018-10-12 03:50:24

标签: azure-iot-edge

我正在尝试将IoT边缘设备上的模块启动到一些已经设置的指定docker网络中。

在这里查看自述文件(github iotedge/edge-agent),似乎表明我可以在edgeAgent模块上设置user@iot-edge:~$ sudo docker network ls NETWORK ID NAME DRIVER SCOPE 79a913b7939e azure-iot-edge bridge local 8ec9339ee789 bridge bridge local 4c4dc85139ab host host local ca2bdc648e9f none null local 585545f54602 my-network bridge local 环境变量,这将导致它启动新模块。那个docker网络。

在边缘主机上,我具有以下网络:

NetworkId

我正在我的Azure门户中为edgeAgent设置my-network环境变量。无论我将其设置为585545f54602还是azure-iot-edge,新模块始终会启动到@Table网络中。

我是否应该了解这种方法的工作方式,或者是否有更好的方法来实现我追求的结果?

1 个答案:

答案 0 :(得分:0)

您应该能够在IoT Edge守护程序的配置文件中指定网络。该文件通常位于/etc/iotedge/config.yaml

network部分中的moby_runtime设置应该可以实现您想要的:

moby_runtime:
  uri: "unix:///var/run/docker.sock"
  network: "my-network"

这将正确设置Edge Agent中的env变量,并将此网络配置级联到所有其他容器。