菜单
本页目录

nginx-yq 使用教程

6a780f3a2419336a4c20804bcf57c946.jpeg

1、使用不同参数启动容器 #下载镜像后即可直接执行

实现镜像动态化:使用镜像时,传递不同的参数,得到不同的效果

[root@localhost nginx]# docker run --name nginx-80 -d -p 80:80 nginx:v1								#80端口使用默认参数运行容器
[root@localhost nginx]# docker run --name nginx-8080 -d -p 8080:80 --env INDEX_DATA=yangqin nginx:v1	#8080端口修改参数运行容器

2、浏览器访问测试

tisdF.png

3、重启所有镜像再次访问测试

实现镜像动态化:幂等性

#重启所有容器
[root@localhost nginx]# docker restart nginx-80 nginx-8080

浏览器访问测试:

tisdF.png

4、拓展:镜像制作过程

1)编写 Dockerfile 文件

[root@localhost ~]# mkdir nginx ; cd nginx
[root@localhost nginx]# vim Dockerfile 
[root@localhost nginx]# cat Dockerfile 
FROM centos:centos7.9.2009
MAINTAINER yq "yq@qq.com"
LABEL nginx_veriosn=1.18.0
ENV INDEX_DATA xinxianghf
RUN cd /etc/yum.repos.d/ && mkdir back && mv *.repo back/ && curl http://mirrors.163.com/.help/CentOS7-Base-163.repo > 163.repo && yum clean all
RUN yum -y install gcc gcc-c++ pcre pcre-devel zlib zlib-devel make
ADD ./nginx-1.18.0.tar.gz /root/
RUN cd /root/nginx-1.18.0 && ./configure --prefix=/usr/local/nginx && make && make install
RUN rm -rf /usr/local/nginx/html/index.html
WORKDIR /usr/local/nginx
ADD ./startup.sh /root/
RUN chmod a+x /root/startup.sh
CMD /root/startup.sh

2)编写启动脚本

[root@localhost nginx]# vim startup.sh
[root@localhost nginx]# cat startup.sh
#!/bin/bash
echo $INDEX_DATA > /usr/local/nginx/html/index.html
/usr/local/nginx/sbin/nginx
touch /usr/local/nginx/logs/access.log
tail -f /usr/local/nginx/logs/access.log

3)上传 nginx 源码包

tihv5.png

4)制作镜像

[root@localhost nginx]# ls								#检查制作镜像需要的源材料
Dockerfile  nginx-1.18.0.tar.gz  startup.sh
[root@localhost nginx]# docker build -t nginx:v1 .		# docker build 制作镜像(别忘了最后要指定源材料位置)