Docker容器技术应用 实验指导书 任务4.2.3 通过Dockerfile构建Nginx镜像.docx
任务4.2.3通过Dockerfile构建Nginx镜像
(1)任务目标
理解通过Dockerfile构建Nginx镜像的方法
(2)任务内容
创建工作目录
编写Dockerfile文件
生成镜像
启动容器测试
(3)完成任务所需的设备和软件
一台安装Windows10操作系统的计算机
VMwareWorkstation,Docker
远程管理工具MobaXterm
(4)任务实施步骤:
第一步:建立工作目录,操作命令如下:
[root@docker~]#mkdirnginx
[root@docker~]#cdnginx
第二步:创建并编辑Dockerfile文件,操作命令如下:
[root@dockernginx]#vimDockerfile
Dockerfile文件的内容如下所示,共14行代码:
1FROMcentos:7
2MAINTAINERcloud-ops@
3RUNyuminstall-ywgetproc-develnet-toolsgcczlibzlib-develmakeopenssl-devel
4RUNwget/download/nginx-1.9.7.tar.gz
5RUNtarzxfnginx-1.9.7.tar.gz
6WORKDIRnginx-1.9.7
7RUN./configure--prefix=/usr/local/nginxmakemakeinstall
8EXPOSE80
9EXPOSE443
10RUNechodaemonoff;/usr/local/nginx/conf/nginx.conf
11WORKDIR/root/nginx
12ADDrun.sh/run.sh
13RUNchmod775/run.sh
14CMD[/run.sh]
第1行指明了基础镜像,第2行说明镜像维护者的信息,第3行安装相关依赖包,第4-5行下载并解压Nginx源码包,第6-7行编译并安装Nginx,第8-9行开启80和443端口,第10行修改Nginx配置文件以daemon方式启动,第11-13行复制启动脚本并设置权限,第14行启动容器时执行脚本。
第三步:编写执行脚本内容,操作命令如下:
[root@dockernginx]#vimrun.sh
1#!/bin/bash
2/usr/local/nginx/sbin/nginx
第四步:构建镜像,操作命令如下:
[root@dockernginx]#dockerbuild-tnginx:new.
第五步:启动容器并查看,操作命令如下:
[root@docker~]#dockerrun-d-Pnginx:new
-P:表示Docker会随机映射一个端口到容器内部开放的网络端口。
[root@docker~]#dockerps-a
命令运行结果如图4-11所示,可以看到随机映射的端口是49160。
图4-11启动容器
第六步:通过浏览器访问地址0:49160,如图4-12所示,可见构建的nginx镜像测试成功。
图4-12访问页面