centos7.4下Dockerfile建立nginx映象並生成容器這樣做解決所有錯誤!!!
實驗環境: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<[email protected]>
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是否啟動...