Как привязать / сопоставить устройство с Rancher?

Когда я запускаю команду на своем SBC:

docker run --volume $(pwd):/home/octoprint --device /dev/ttyUSB0:/dev/ttyACM0 -p 5000:5000 --name octoprint octoprint/octoprint:1.4.0-python3

Все нормально работает; Я могу открыть экран октопринта, и мой 3D-принтер распознается без проблем.

Однако, когда я пытаюсь запустить эквивалент --device /dev/ttyUSB0:/dev/ttyACM0 для сопоставления любого типа тома, насколько это возможно, я не могу создать эквивалентную конфигурацию.

Пожалуйста, как мне заставить Rancher распознавать --device?

1 ответ

Решение

Предполагая, что вы говорите о Kubernetes Rancher. Общий способ заключается в использованииprivilegedв SecurityContext вашего модуля или контейнера.

Например:

  containers:
  - name: sbc
    securityContext:
      privileged: true
    volumeMounts:
    - mountPath: /dev/ttyUSB0
      name: ttyacm
  volumes:
  - name: ttyacm
    hostPath:
      path: /dev/ttyACM0

Более продвинутый способ поддержки хост-устройств - это плагины устройств. Но я считаю, что для стандартного USB все вышеперечисленное должно работать. Вы также можете использовать NodeAffinity, чтобы убедиться, что ваш Pod приземляется там, где находится ваше устройство.

✌️

Другие вопросы по тегам