Làm cách nào để bật SELinux bên trong thùng chứa CentOS Docker?


13

Tôi đang cố gắng cài đặt SELinux bên trong một container Docker để phân phối một ứng dụng sử dụng SELinux trong nội bộ.

Hình ảnh CentOS mặc định không được cài đặt SELinux:

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

Sau khi tôi cài đặt nó từ yum, SELinux chưa được bật.

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

Tất cả các tài liệu tôi tìm thấy nói rằng bạn cần phải khởi động lại hệ thống để cài đặt nó. Tuy nhiên, tôi không biết một phương pháp để mô phỏng khởi động lại hệ thống bên trong một container Docker.

Làm thế nào để một người đi về cài đặt và kích hoạt SELinux bên trong một container?

Câu trả lời:


23

SELinux không được đặt tên, do đó, các thùng chứa riêng lẻ không thể có chính sách SELinux riêng. SELinux sẽ luôn bị "vô hiệu hóa" trong một thùng chứa, mặc dù nó đang chạy trên máy chủ.

Nếu ứng dụng của bạn yêu cầu SELinux, bạn không thể sử dụng nó trong Docker. Bạn sẽ cần phải sử dụng một máy ảo thông thường.



3
tl; dr: containerisation không ảo hóa.
MadHatter
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.