编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库

Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。镜像的定制实际上就是定制每一层所添加的配置、文件。如果我们可以把每一层修改、安装、构建、操作的命令都写入一个脚本,用这个脚本来构建、定制镜像,那么之前提及的无法重复的问题、镜像构建透明性的问题、体积的问题就都会解决。这个脚本就是 Dockerfile

Docker常用参数

FROM                    # 基础镜像,当前新镜像是基于哪个镜像的

MAINTAINER                 # 镜像维护者的姓名混合邮箱地址

RUN                     # 容器构建时需要运行的命令

EXPOSE                # 当前容器对外保留出的端口

WORKDIR                   # 指定在创建容器后,终端默认登录的进来工作目录,一个落脚点

ENV                      # 用来在构建镜像过程中设置环境变量

ADD                      # 将宿主机目录下的文件拷贝进镜像且ADD命令会自动处理URL和解压tar压缩包

COPY                    # 类似ADD,拷贝文件和目录到镜像中!

VOLUME                # 容器数据卷,用于数据保存和持久化工作

CMD                     # 指定一个容器启动时要运行的命令,dockerFile中可以有多个CMD指令,但只有最后一个生效!

ENTRYPOINT         # 指定一个容器启动时要运行的命令!和CMD一样

ONBUILD                     # 当构建一个被继承的DockerFile时运行命令,父镜像在被子镜像继承后,父镜像的ONBUILD  被触发

编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库。

指定打包内容:

1)基于centos基础镜像;
2)指定作者信息;
3)安装nginx服务,将提供的dest目录(提供默认主页index.html)传到镜像内,并将dest目录内的前端文件复制到nginx的工作目录;
4)暴露80端口;
5)设置服务自启动。
6)验证镜像。

1.编写dockerfile文件

编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库_第1张图片

2.构建

3.验证镜像

编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库_第2张图片

4.镜像推送到仓库

5.查看是否推送成功

编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库_第3张图片

三、Dockerfile快速搭建自己专属的LAMP环境,生成镜像lamp:v1.1,并推送到私有仓库。具体要求如下:

(1)基于centos:7基础镜像;

(2)指定作者信息;

(3)安装httpd、mysql、mysql-server、php、php-mysql、php-gd;

(4)暴露80和3306端口;

(5)设置服务自启动。

(6)验证镜像。

1.构建Dockerfile文件

编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库_第4张图片

2.镜像推送

3.查看是否推送成功

编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库_第5张图片

你可能感兴趣的:(nginx,运维)