一文了解Docker容器技术的操作 (4)

上面我们已经介绍了Docker以及在使用Docker过程中常用的一些命令。而本小结将会介绍Dockerfile,Dockerfile是常用的一种创建镜像的方式,由file我们也不难知道Dockerfile就是一个Docker文件,可以简单把它理解成在其内部定义了构建Docker容器的一条条指令,而每一条指令的内容都代表了构建容器的每个流程,Docker通过读取Dockerfile内的每条指令来构建镜像。下面我们将会简单介绍编写Dockerfile的常用指令及其搭建流程,并最终使用Dockerfile来搭建一个centos镜像。(PS:本文中的Dockerfile仅仅是简单介绍,之后Dockerfile的详细编写会单独成文整理)

Dockerfile官方文档:https://docs.docker.com/develop/develop-images/dockerfile_best-practices/

在介绍Dockerfile之前,我们首先通过下面这张图来直观的了解下Dockerfile(来源网络,侵删。)

一文了解Docker容器技术的操作

从上图我们可以大致了解Dockerfile的编写流程,一个标准的Dockerfile以FROM指令开头(除注释之外,注释通过#进行),一般来说,Dockerfile中的指令主要包括四种类型,该四种类型也就是编写Dockerfile的一般流程:

指定构建新镜像的基础镜像(父镜像):FROM

说明所构建镜像的维护者信息:MAINTAINER(官方已经不赞成使用)、LABEL(建议使用)

对镜像的操作指令:RUN、ENV、ADD、COPY以及WORKDIR

对容器的启动指令:CMD、ENTRYPOINT、USER

下面我们通过Dockerfile的形式来搭建一个nginx容器,并访问其index.html页面。

创建一个工作目录,用于指定创建新镜像的所需要的文件(不做要求,但却是一种创建镜像的规范)

mkdir demo_dockerfile
cd demo_dockerfile
vim Dockerfile

编写Dockerfile文件

FROM nginx
LABEL author=taoye email=26647879@qq.com desc="Hello Dockerfile, I am a coder."

Dockerfile文件写完之后,我们通过该文件来创建一个新的镜像,-t参数用于指定创建新镜像的仓库和名称,并设置版本,注意在结尾有.,表示的是指定构建新镜像过程中的上下文环境的目录。

docker build -t demo_nginx/demo_dockerfile:v1.0 .

执行之后docker build之后便会在本地创建了一个新的镜像,我们可以通过该镜像来创建容器并使用curl来进行测试

docker run --name demo_nginx -d -p 7777:80 demo_nginx/demo_dockerfile:v1.0

curl localhost:7777

一文了解Docker容器技术的操作

总结

本文首先介绍的是对Docker基本认识,其次详细说明了Docker环境的搭建,之后常见的Docker操作,最后简单介绍了Dockerfile及通过Dockerfile创建一个简单nginx容器。在之后文章中会详细介绍Dockerfile,最好的学习方式莫过于从官方文档中尽情的无偿汲取知识,本文说到底仅仅是在学习Docker官方文档之后的一个简单总结,所涉及到的也只是冰山一角。Docker官方文档中包含了详细且全面的介绍,涉及到Docker的方方面面,有条件的朋友强烈建议阅读耐心地阅读官方文档:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyxdxs.html