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镜像的主要内容,如果未能解决你的问题,请参考以下文章

Dockerfile构建镜像与部署

Docker---镜像详解Dockerfile编写及优化部署nginx

使用 Dockerfile 部署镜像实例

Dockerfile部署镜像实例

docker数据管理和镜像创建dockerfile部署

docker数据管理和镜像创建dockerfile部署