Назад | Перейти на главную страницу

Невозможно запустить контейнер докеров с помощью systemd, когда SELinux находится в принудительном состоянии

Когда я запускаю контейнер Docker, в котором есть systemd, с SELinux в enforcing состояние, я получаю сообщение об ошибке «Нет такого файла или каталога», и контейнер не запускается.

Журналы аудита содержат следующие сообщения об ошибках:

avc: отказано {чтение выполнить} для pid = XXXX comm = "w" path = "/ w / w" dev = "sda3" ino = 135817694 scontext = system_u: system_r: container_t: s0: c712, c950 tcontext = system_u: object_r : container_file_t: s0: c373, c565 tclass = разрешение файла = 0

avc: запрещено {читать выполнение} для pid = XXXX comm = "sh" path = "/ usr / bin / bash" dev = "sda3" ino = 2687570 scontext = system_u: system_r: container_t: s0: c337, c629 tcontext = system_u : object_r: default_t: s0 tclass = разрешение файла = 0

Я добавил ниже политики SELInux, чтобы исправить это:

allow container_t default_t:file { create execute execute_no_trans ioctl open read write };
allow container_t container_file_t:file { execute execute_no_trans read write };
allow container_t default_t:dir { add_name remove_name write };

Но у меня все та же ошибка.

У Docker есть собственный метод запуска. Запустить с опцией --restart = always

ссылка на докер