ここで説明されているようにcentos + systemd Dockerコンテナを実行しようとしています。https://hub.docker.com/_/centos/。
docker build --rm -t local/c7-systemd c7-systemd
ドッカーファイル:
FROM centos:7
ENV container docker
RUN (cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i == \
systemd-tmpfiles-setup.service ] || rm -f $i; done); \
rm -f /lib/systemd/system/multi-user.target.wants/*;\
rm -f /etc/systemd/system/*.wants/*;\
rm -f /lib/systemd/system/local-fs.target.wants/*; \
rm -f /lib/systemd/system/sockets.target.wants/*udev*; \
rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \
rm -f /lib/systemd/system/basic.target.wants/*;\
rm -f /lib/systemd/system/anaconda.target.wants/*;
VOLUME [ "/sys/fs/cgroup" ]
CMD ["/usr/sbin/init"]
docker build --rm -t local/c7-systemd-httpd c7-systemd-httpd
ドッカーファイル:
FROM local/c7-systemd
RUN echo "myproxy" >> /etc/yum.conf
RUN yum -y install httpd; yum clean all; systemctl enable httpd.service
EXPOSE 80
CMD ["/usr/sbin/init"]
docker run -ti --cap-add SYS_ADMIN --security-opt seccomp:unconfined -v /sys/fs/cgroup:/sys/fs/cgroup:ro -p 80:80 local/c7-systemd /bin/bash
私も試してみましたが、--privileged
これを得るたびに次のようになります。
[root@e29ecfb082d8 /]# systemctl status
Failed to get D-Bus connection: Operation not permitted
私はCygwin、Dockerバージョン18.03.1-ce、ビルド9ee9f40(Windows用Docker)で実行しています。
この構成で動作するcentos7 + systemdコンテナを取得する方法があるかどうかを教えてください。
ベストアンサー1
作業コンテナがあります。https://hub.docker.com/r/centos/systemd/
docker build --rm --no-cache -t c7-systemd-off c7-systemd-off
ドッカーファイル:
FROM centos/systemd
RUN echo "myproxy" >> /etc/yum.conf
RUN yum -y install httpd; yum clean all; systemctl enable httpd.service
EXPOSE 80
CMD ["/usr/sbin/init"]
docker run --privileged --name c7 -v /sys/fs/cgroup:/sys/fs/cgroup:ro -p 80:80 -d c7-systemd-off
docker exec -it c7 /bin/bash