用Docker构建Nginx镜像

1构建Nginx镜像

1建立工作目录

[root@localhost ]# mkdir 1nginx

[root@localhost 1nginx]# cd 1nginx/

[root@localhost 1nginx]# ls

Dockerfile  nginx-1.14.2.tar.gz  run.sh

 

2,创建并编写Dockfile文件

[root@localhost 1nginx]# vim Dockerfile

#创建者的基本信息

MAINTAINER adc@163.com

#解决依赖关系

RUN yum install -y  make gcc openssl-devel pcre-devel zlib-devel

#添加nginx用户

RUN  groupadd -r nginx && useradd -r -g nginx -s /bin/false -M nginx

#添加nginx安装包,并默认解压

ADD nginx-1.14.2.tar.gz /usr/local/src/

#添加启动nginx服务脚本

ADD run.sh /run.sh

#定义工作目录

WORKDIR /usr/local/src/nginx-1.14.2/

#执行命令进行安装

RUN ./configure \

          --prefix=/usr/local/nginx \

            --sbin-path=/usr/sbin/nginx \

              --conf-path=/etc/nginx/nginx.conf \

                --error-log-path=/var/log/nginx/error.log \

                  --http-log-path=/var/log/nginx/access.log \

                    --pid-path=/var/run/nginx/nginx.pid  \

                      --lock-path=/var/lock/nginx.lock \

                        --user=nginx \

                          --group=nginx \

                            --with-http_ssl_module \

                              --with-http_flv_module && make && make install

 

#定义输出命令

CMD ["/run.sh"]

#定义输出端口

EXPOSE 80

 

3.编写执行脚本内容

[root@localhost 1nginx]# vim run.sh

#!/bin/bash

sed -i '/daemon off/d' /etc/nginx/nginx.conf

#设置nginxdaemon守护进程

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

#杀掉nginx服务

killall nginx

#启动nginx服务

/usr/sbin/nginx -c /etc/nginx/nginx.conf

 

  1. 生成镜像

[root@localhost 1nginx]# docker build -t nginx.web .

[root@localhost 1nginx]# docker images

 

  1. 启动容器进行测试

 

[root@localhost 1nginx]# docker run -d -p 81:80 nginx.web

[root@localhost 1nginx]# docker ps

[root@localhost 1nginx]# curl 192.168.30.24:81

<!DOCTYPE html>

<html>

<head>

<title>Welcome to nginx!</title>

 

转载于:https://www.cnblogs.com/zc1741845455/p/10943947.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值