dockerfile 制作nginx镜像

1、创建nginxmul

#mkdir nginx

#cd nginx

2、将nginx解压后的目录放在nginx目录下

 

3、创建Dockerfile文件

# vi Dockerfile

#要用centos7 不能用latest,因为latest版本没有rpm和yum,安装nginx需要安装依赖

FROM centos:7

#镜像是谁写的
MAINTAINER 907164701@qq.com

#安装依赖
RUN yum -y install gcc pcre-devel zlib-devel openssl openssl-devel wget

#创建用户
RUN useradd -M -s /sbin/nologin nginx

#将解压后的目录拷贝到容器的/root下
ADD ./nginx-1.20.2 /root/nginx-1.20.2

#进入安装目录 && 编译 && 安装

#踩坑记录:不要把三个命令分开 。因为一个RUN 执行完成后,会回到/目录,第二个命令就找不到正确路径 
RUN cd /root/nginx-1.20.2 && ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx/ --with-http_stub_status_module --with-http_ssl_module && make && make install

#设置环境变量
ENV PATH /usr/local/nginx/sbin:$PATH

#设置端口

EXPOSE 80

#启动容器时同时启动命令nginx,因为设置了环境变量,nginx是启动的意思。踩坑记录:有这条命令,启动容器失败。

#ENTRYPOINT ["nginx"]

 4、创建镜像

#注意《.》号,创建一个名为nginx,版本号为1.20.2的镜像

#docker build -t nginx:1.20.2 .

 

 

5、查看镜像

#docker images

 

 

6、运行容器

 # docker run -itd -p 8090:80 --name nginx  nginx:1.20.2 /bin/bash

 

 7、验证

登录浏览器,容器映射nginx 80的端口为8090,浏览器地址:http://192.168.59.102:8090/

 

posted @ 2022-05-13 17:28  leihongnu  阅读(1052)  评论(0)    收藏  举报