Я использую Докер на малине. Я хочу получить доступ к линиям GPIO из контейнера в качестве пользователя (а не как root).Импортировать группу хозяев в контейнер Докера
Raspberry run raspbian 8.0.
Глядя на содержание /sys/class
на хосте:
[email protected]:~ $ ls -al /sys/class/
total 0
[...]
drwxrwx--- 2 root gpio 0 Sep 27 19:05 gpio
[...]
Папка принадлежит к группе GPIO.
Когда я запускаю мой контейнер таким образом:
docker run -it --privileged container-name bash
Пользователь не может получить доступ к папке GPIO:
[email protected]:/# su user
[email protected]:/$ ls /sys/class/gpio/
ls: cannot open directory /sys/class/gpio/: Permission denied
Даже если пользователь входит в группу GPIO, потому что я создал группа в файле Docker и назначила ее моему пользователю:
[email protected]:/$ groups user
user : user gpio fuse
Это потому, что по какой-то причине t Группа gpio потеряна:
[email protected]:/# ls -al /sys/class/
total 0
[...]
drwxrwx--- 2 root 997 0 Sep 27 19:05 gpio
[...]
Как сделать контейнер распознающим группу?
Как обходной путь, я могу изменить /etc/group
, чтобы группа gpio соответствовала соответствующему UID. Проблема в том, что UID группы gpio может измениться при следующей установке raspbian на малину.
Любой способ динамически создать группу gpio или получить GID хоста gpio в файле Dockerfile?