dockerfile 构建nginx

dockerfile是一种可以被docker解释并执行的脚本,拥有自己固定的指令
指令
FROM                            #基础镜像,一切从这里开始构建
MAINTAINER                #镜像是谁写的,名字+邮箱
RUN                             #镜像构建的时候被需要运行的命令
ADD                             #格式为ADD <src> <dest>。
                                    该命令将复制指定的<src>到容器中的<dest>.
                                    其中<src>可以是Dockerfile所在目录的一个相对路径(文件或目录)
                                   也可以是一个URL;还可以是一个tar文件(会自动解压为目录)。
WORKDIR                  #镜像的挂载目录
VOLUME                    #挂载的目录
EXPOST                    #保留端口配置
CMD                          #指定这个容器启动的时候要运行的命令,只有之后一个会生效,可被替代
ENTRYPOINT           #指定这个容器启动的时候要运行的命令,可以追加命令
COPY                       #类似ADD,将我们文件拷贝到镜像中
ENV                          #构建的时候设置环境变量

提前下载tar包
##dockerfile安装nginx
FROM centos:7                             #指定基础镜像
RUN yum install epel-release -y && \  #运行命令 
    yum install nginx -y
CMD ["nginx","-g","daemon off;"]      #放在前台运行

##编译
FROM centos:7                         #指定基础镜像
LABEL MAINTAINER lyh www.cxzlsh       #指定作者
RUN yum install -y gcc gcc-c++ make \ #run执行命令
    openssl-devel pcre-devel gd-devel \
    iproute net-tools telnet wget curl && \
    yum clean all && \
    rm -rf /var/cache/yum/*
ADD nginx-1.15.5.tar.gz /              #将tar复制到容器中会自动解压
RUN cd nginx-1.15.5 && \              #执行命令
    ./configure --prefix=usr/local/nginx \
    --with-http_ssl_module \
    --with-http_stub_status_module %% \
    make -j 4 && make install && \
    cd / && rm -rf nginx* && \
    ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ENV PATH $PATH:/usr/local/nginx/confi/nginx.conf    #env定义环境变量
COPY nginx.conf /usr/local/nginx/conf/nginx.conf    #copy将nginx.conf拷贝到容器指定目录
WORKDIR /usr/local/nginx                            #指定工作目录
EXPOSE 80                                                   #通知 Docker 容器在运行时监听80端口
CMD ["nginx","-g","daemon off;"]                    #nginx前台运行
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值