实验环境:192.168.80.185 (www.ae.com)

https://download.openvz.org/template/precreated/           //去公网环境下载基础镜像centos

--------创建nginx镜像:前提要有centos这个镜像---

mkdir nginx

cd nginx

vi Dockerfile

FROM centos

MAINTAINER The Centos Project<cloud-ops@centos.org>

RUN yum install -y epel-release

RUN yum install -y nginx

#ADD nginx.conf /etc/nginx/nginx.conf

#RUN echo "daemon off;" >> /etc/nginx/nginx.conf      

ADD run.sh /run.sh

RUN chmod 775 /run.sh

EXPOSE 80

#CMD [ "/usr/sbin/init"]

CMD ["/run.sh"]

:wq

vi run.sh

#!/bin/bash

/usr/sbin/nginx

:wq

vi nginx.conf

....                     //这里可以根据情况自己写nginx的配置文件

:wq

docker build -t nginx:centos .               //生成镜像


docker run --privileged -itd -p 192.168.80.185:80:80 e2272d08b0cc /usr/sbin/init     //这里是镜像ID

 

 

docker exec -it 71881be60901 /bin/bash   //进入容器,这里是容器ID

去容器里启动nginx服务

sh run.sh

----注意:如果是centos7的镜像创建的容器,需要在容器里做以下操作,否则在浏览器里无法访问---

systemctl stop httpd   //centos7这个镜像里默认开机就运行了httpd服务占用了80端口,所以要关闭httpd服务

systemctl stop iptables

systemctl stop firewalld

setenforce 0

浏览器测试nginx是否启动...




Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐