我正在尝试将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
网络中。
我是否应该了解这种方法的工作方式,或者是否有更好的方法来实现我追求的结果?
答案 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变量,并将此网络配置级联到所有其他容器。