首先使用centos镜像新建一个容器,然后在该容器中安装httpd服务,并启动
yum install -y epel-release
yum install -y nginx
新建的容器,启动nginx或者httpd服务的时候会报错
Failed to get D-Bus connection: Operation not permitted
这是因为dbus-daemon没有启动,解决该问题可以这样做
启动容器时,要加上--privileged -e "container=docker" ,并且最后面的命令改为/usr/sbin/init
docker run -itd --privileged -e "container=docker" centos_with_nginx /usr/sbin/init
再把该容器导成一个新的镜像(centos-httpd),然后再使用新镜像创建容器,并指定端口映射
docker run -itd -p 5123:80 centos-httpd bash //-p 可以指定端口映射,本例中将容器的80端口映射为本地的5123端口
docker exec -it container_id bash
启动httpd: systemctl start nginx
编辑1.html: vi /usr/share/nginx/html/zzz.html 随便写点东西
退出该容器:exit
测试: curl 127.0.0.1:5123/1.html