Dockerfile
FROM centos:7
ENV container docker
VOLUME ["/sys/fs/cgroup"]
RUN yum -y update
RUN yum install -y httpd
RUN systemctl start httpd.service
ADD . /code
WORKDIR /code
泊坞窗,compose.yml
version: '2'
services:
web:
privileged: true
build: .
ports:
- "80:80"
volumes:
- .:/code
命令
docker-compose build
错误:
第6步:运行systemctl启动httpd.service
—>在5989c6576ac9中运行
?[91m无法获得D-Bus连接:不允许操作
?[0m?[31mERROR?[0m:服务’网’未能建立:命令’/ bin / sh -c syste
mctl start httpd.service’返回非零代码:1
Obs:在Windows 7上运行:(
有提示吗?
最佳答案
如centos docker image repository中所述,默认情况下Systemd未处于活动状态.要使用systemd,您需要包含类似于下面示例Dockerfile的文本:
FROM centos:7
MAINTAINER "you"
此Dockerfile删除可能导致问题的许多单元文件.从这里开始,您就可以构建基本映像了.
$docker build --rm -t local/c7-systemd .
要使用上面创建的systemd启用的基本容器,您需要将Dockerfile更改为:
FROM local/c7-systemd
ENV container docker
VOLUME ["/sys/fs/cgroup"]
RUN yum -y update
RUN yum install -y httpd
RUN systemctl start httpd.service
ADD . /code
WORKDIR /code