Dockerfile
dockerfile是Docker用来构建镜像的描述文件, 包含自定义的指令和格式。可以通过docker build命令从dockerfile中构建镜像。
有意思的解释:
Docker:最早是dotCloud公司出品的一套容器管理工具,但后来Docker慢慢火起来了,连公司名字都从dotCloud改成Docker。
Dockerfile: 它是Docker镜像的描述文件,可以理解成火箭发射的A、B、C、D……的步骤。
Docker镜像: 通过Dockerfile做出来的,包含操作系统基础文件和软件运行环境,它使用分层的存储方式。
容器: 是运行起来的镜像,简单理解,Docker镜像相当于程序,容器相当于进程。
docker build命令和镜像构建过程
DockerFile分为四部分组成:
基础镜像信、维护者信息、镜像操作指令和容器启动时执行指令。 例如:
#第一行必须指令基于的基础镜像
From ubutu:15.10
#维护者信息
MAINTAINER docker_user docker_user@mail.com
#镜像的操作指令
apt/sourcelist.list
RUN apt-get update && apt-get install -y ngnix
RUN echo "\ndaemon off;">>/etc/ngnix/nignix.conf
#容器启动时执行指令
CMD /usr/sbin/ngnix
指令详解: 不想写了,参考下面链接:
https://www.oschina.net/question/584116_2209819
https://blog.csdn.net/mozf881/article/details/55798811
构建镜像:
格式为Docker Build [选项] 路径
需要制定标签信息,可以使用-t选项
例如:Dockerfile路径为 /tmp/docker_build/,生成镜像的标签为build_repo/my_images
$docker build -t build_repo/my_images /tmp/docker_build/
或者进入Dockerfile所在目录,运行命令 如:
$docker build -t ngnix .
dockerfile路径省略了
(注意最后有个点用来表示当前目录,初次构建速度会比较慢,需要多等一会。)
突然想起很久不用的 Makefile, 理解差不多的相似的东东。
网友评论