2

我正在测试新的 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 门户创建新部署时如何指定选项?

4

1 回答 1

10

理论上,您可以指定此处说明的 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
  }
}
于 2017-12-18T16:26:37.580 回答