Есть ли способ предоставить пользователю (точнее www-data) доступ ТОЛЬКО для проверки докеров? Допускается любое рабочее решение
Вы можете определить это с помощью sudoers (команда visudo для редактирования):
www-data ALL=(ALL:ALL) NOPASSWD:/usr/bin/docker inspect *
Пользователь www-data будет иметь доступ к двоичному файлу / usr / bin / docker с аргументом inspect и другими аргументами этой команды. Эта команда не требует пароля. Если вы не хотите, чтобы такое поведение удалено "NOPASSWD:".
Например:
User can successfully run sudo docker inspect {{container_name}}
User can successfully run sudo docker inspect --help
User can't successfully run sudo docker run {{container}}
User can't successfully run sudo docker inspect without arguments
Docker не имеет какой-либо детализации прав доступа, но вы можете довольно легко написать альтернативный клиент, который использует Docker API реализовать именно ту часть, которая вам нужна.
Затем этот клиент может быть установлен для пользователя с разрешениями на сокет Docker.