我试图了解IoT边缘设备是如何根据特定的设备部署策略部署模块的。下面是我的测试用例:
在我的开发机器上,
"modules": {
"MyModule": {
"version": "1.0",
"type": "docker",
"status": "running",
"restartPolicy": "always",
"settings": {
"image": "<my_acr.azurecr.io>/mymodule:1.0",
"createOptions": "{}"
}
}
}
那么,让我的现有部署策略强制更新设备上的模块版本的正确方法是什么呢?我认为基于https://learn.microsoft.com/en-us/azure/iot-edge/how-to-update-iot-edge#understand-iot-edge-tags,我的模块正在使用滚动标记方案。
发布于 2019-12-12 20:12:22
是的,就像你贴的一样:
如果在部署中使用滚动标记,那么需要强制设备上的容器运行时使用来提取图像的最新版本。
因此,通过使用滚动标签,设备上不会自动发生任何事情。因为:为什么要这么做?设备没有监视容器注册表中的更改。
您能做的是:如果您再次在设备上手动拉出相同的图像(docker pull <my_acr.azurecr.io>/mymodule:1.0
),则iotedge将在设备上看到图像已经更改。然后,它将使用新的映像版本在本地重新部署模块。
https://stackoverflow.com/questions/59311214
复制相似问题