CentOS Dockerコンテナー内でSELinuxを有効にする方法


13

SELinuxを内部で使用するアプリケーションを配布するために、Dockerコンテナー内にSELinuxをインストールしようとしています。

デフォルトのCentOSイメージにはSELinuxがインストールされていません。

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

yumからインストールした後、SELinuxはまだ有効になっていません。

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

私が見つけたすべての文書には、システムを再起動してインストールする必要があると書かれています。ただし、Dockerコンテナー内でシステムの再起動をシミュレートする方法は知りません。

コンテナ内にSELinuxをインストールして有効にするにはどうすればよいですか?

回答:


23

SELinuxは名前空間に対応していないため、個々のコンテナに独自のSELinuxポリシーを設定することはできません。SELinuxはホスト上で実行されていますが、コンテナ内では常に「無効」になっています。

アプリケーションにSELinuxが必要な場合、Docker内で使用できません。通常の仮想マシンを使用する必要があります。



3
tl; dr:containerisationは仮想化ではありません。
MadHatter
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.