镜像的定制实际上就是定制每一层所添加的配置、文件。

如果我们可以把每一层修改、安装、构建、操作的命令都写入一个脚本,用这个脚本来构建、定制镜像,那么之前提及的无法重复的问题、镜像构建透明性的问题、体积的问题就都会解决。
这个脚本就是 Dockerfifile。

示例:定制一个web服务器

1,在项目目录下见一个文件,Dockerfile,写入下面内容

  1. # Dockerfile
  2. FROM nginx:latest
  3. RUN echo '<h1>Hello docker!</h1>' > /usr/share/nginx/html/index.html

2,生成镜像,

  1. # 定制镜像
  2. $ docker build -t chh-web .

3,运行,

  1. # 运行
  2. $ docker run -p 80:80 nginx:kaikeba