nginx-yq 使用教程
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、浏览器访问测试
3、重启所有镜像再次访问测试
实现镜像动态化:幂等性
#重启所有容器
[root@localhost nginx]# docker restart nginx-80 nginx-8080
浏览器访问测试:
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 源码包

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