我正在测试新的 Azure IoT Edge V2。我需要使用这样的 --device 选项运行部署到边缘设备的 Docker 镜像(以访问串行端口):
$ docker run --device=/dev/serial/by-id/usb-ELT_SENSOR_EK100_V1.0_SN000001-if00-port0 olavt.azurecr.io/testco2sensor-arm32
如何指定
--device
从 Azure 门户创建新部署时的选项?
最佳答案
理论上,您可以指定此处所述的 docker api 容器创建选项中记录的任何内容 https://docs.docker.com/engine/api/v1.30/#operation/ContainerCreate
在设备情况下,您可以(我从未尝试过)在 createOptions
中指定:
{
"HostConfig": {
"Devices": [
{
"PathOnHost": "/dev/serial/by-id/usb-ELT_SENSOR_EK100_V1.0_SN000001-if00-port0",
"PathInContainer": "/dev/serial/by-id/usb-ELT_SENSOR_EK100_V1.0_SN000001-if00-port0",
"CgroupPermissions": "rwm"
}
]
}
}
可以肯定的是,它使容器特权完全开放了硬件方面的所有内容。为此,您只需使用 Privileged
范围。请注意,Privileged 中只有一个 d。{
"HostConfig": {
"Privileged": true
}
}
关于docker - 如何为 Docker 运行命令指定 --device 选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47872218/