Dockerfile部署Nginx1.9.7镜像
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dockerfile部署Nginx1.9.7镜像相关的知识,希望对你有一定的参考价值。
全步骤:[root@localhost ~]# yum install yum-utils device-mapper-persistent-data lvm2 -y
[root@localhost ~]# yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
[root@localhost ~]# yum install -y docker-ce
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl start docker.service
[root@localhost ~]# systemctl enable docker.service
[root@localhost ~]# tee /etc/docker/daemon.json <<-‘EOF‘
{
"registry-mirrors": ["https://w1ogxqvl.mirror.aliyuncs.com"]
}
EOF
[root@localhost ~]# systemctl daemon-reload
[root@localhost ~]# systemctl restart docker
[root@localhost ~]# docker pull centos:7
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos 7 5e35e350aded 6 weeks ago 203MB
[root@localhost ~]# cd /opt/
[root@localhost opt]# mkdir nginx
[root@localhost opt]# cd nginx/
[root@localhost nginx]# vim Dockerfile
#基于基础镜像
FROM 5e35e350aded
#用户信息
MAINTAINER The is nginx <zjx>
#添加环境包
RUN yum install -y proc-devel gcc gcc-c++ zlib zlib-devel make openssl-devel wget
#下载nginx软件包
RUN wget http://nginx.org/download/nginx-1.9.7.tar.gz
RUN tar zxvf nginx-1.9.7.tar.gz
#指定工作目录
WORKDIR nginx-1.9.7/
RUN ./configure --prefix=/usr/local/nginx && make && make install
#指定http和https端口
EXPOSE 80
EXPOSE 443
#关闭守护进程
RUN echo "daemon off;" >>/usr/local/nginx/conf/nginx.conf
WORKDIR /root/nginx
#添加宿主机中run.sh到容器中
ADD run.sh /run.sh
RUN chmod 755 /run.sh
CMD ["/run.sh"]
[root@localhost nginx]# vim run.sh
#!/bin/bash
/usr/local/nginx/sbin/nginx
#创建新镜像
[root@localhost nginx]# docker build -t nginx:new .
#启动容器进行测试
[root@localhost nginx]# docker run -d -P nginx:new
1e42f3a46caf349a964c4304b900ecb406102e3dc7e5beae16293f071470e54b
[root@localhost nginx]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1e42f3a46caf nginx:new "/run.sh" 8 seconds ago Up 7 seconds 0.0.0.0:32769->80/tcp, 0.0.0.0:32768->443/tcp hardcore_cerf
验证:回到宿主机在浏览器中访问CentOS的IP地址的32769端口,看是否可以访问Nginx主页
以上是关于Dockerfile部署Nginx1.9.7镜像的主要内容,如果未能解决你的问题,请参考以下文章