dockerfile 文件 是一个用来构建docker 镜像的文件,通过dockerfile 文件,你可以生成自己独有docker镜像。
dockerfiel文件由一系列指令组成,每个指令都有自己独特的含义。编写完docker file文件后,通过运行docker build 命令就可以生成属于自己的docker 镜像。
下面是一个简单的例子
FROM ubuntu:16.04
RUN apt-get update \
&& apt-get -y install cron net-tools nano
COPY example /root/example/
RUN cd /root/example \
&& bash start.sh \
&& mkdir /var/log/example
例子中有三个常见的指令,下面依次来进行讲解。
FROM :定制镜像的来源。定制的镜像都是基于已有镜像的,FROM 指令用于指定定制镜像的源镜像。源镜像可以是docker hub 上已有的镜像,也可以是自己本地存在的镜像。你可以把一个定制过的镜像作为源镜像,来进行再次的定制。
RUN:用于执行后面跟着的命令行命令。在RUN 指令后面的都是直接可以在命令行里运行的命令。
COPY:复制指令,用于从上下文目录中复制文件或者目录到容器里指定路径。注意这里的上下文目录就是docker file 文件所在的目录,要把需要复制的文件或文件夹放在和docker file同一个目录下。
其他命令可以参考这篇文章来进行学习。
docker file 文件编写完成后可以运行下面的命令来生成定制的docker 镜像。要在docker file文件所在目录下运行命令,以保证docker 能够找到docker file 文件。
// -t 参数后面是生成镜像的名称和标签名 . 用来表示COPY指令的上下文目录
docker build -t joy/test:1 .