Como habilitar o SELinux dentro de um contêiner do CentOS Docker?


13

Estou tentando instalar o SELinux dentro de um contêiner do Docker para distribuir um aplicativo que usa o SELinux internamente.

A imagem padrão do CentOS não possui o SELinux instalado:

$ docker run -it centos:latest /bin/bash
[root@38ae5a98273d /]# sestatus
bash: sestatus: command not found

Após a instalação do yum, o SELinux ainda não está ativado.

[root@38ae5a98273d /]# yum install policycoreutils selinux-policy-targeted
...
[root@38ae5a98273d /]# sestatus
SELinux status:                 disabled

Toda a documentação que encontrei diz que é necessário emitir uma reinicialização do sistema para instalá-lo. No entanto, não conheço um método para simular uma reinicialização do sistema dentro de um contêiner do Docker.

Como instalar e ativar o SELinux dentro de um contêiner?

Respostas:


23

O SELinux não está no namespace, portanto, os contêineres individuais não podem ter suas próprias políticas separadas do SELinux. O SELinux sempre parece estar "desativado" em um contêiner, embora esteja sendo executado no host.

Se o seu aplicativo precisar do SELinux, você não poderá usá-lo no Docker. Você precisará usar uma máquina virtual comum.



3
tl; dr: containerisation não é virtualização.
MadHatter 17/02
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.