Docker教程

Docker Dockerfile

Docker Dockerfile

Dockerfile 是一个文本文档,其中包含用于组装图像的命令。我们可以使用任何在命令行上调用的命令。 Docker 通过读取 Dockerfile 中的指令自动构建镜像。
docker build 命令用于从 Dockerfile 构建镜像。您可以在 docker build 中使用-f 标志来指向文件系统中任何位置的 Dockerfile。
$ docker build-f /path/to/a/Dockerfile . 

Dockerfile 指令

指令不区分大小写,但您必须遵循建议使用大写的约定。
Docker 运行 Dockerfile 的指令按从上到下的顺序。第一条指令必须是FROM,以便指定基本图像。
以# 开头的语句被视为注释。您可以在 Dockerfile 中使用 RUN、CMD、FROM、EXPOSE、ENV 等指令。
这里,我们列出了一些常用指令。
该指令用于为后续指令设置Base Image。一个有效的 Dockerfile 必须将 FROM 作为其第一条指令。
Ex.
FROM ubuntu

LABEL

我们可以为图像添加标签以组织我们项目的图像。我们需要使用 LABEL 指令来为图像设置标签。
Ex.
LABEL vendorl = "lidihuo" 

RUN

该指令用于执行当前图像的任何命令。
Ex.
RUN /bin/bash-c 'source $HOME/.bashrc; echo $HOME'

CMD

用于通过图像执行应用程序。我们应该始终以下面的形式使用 CMD
CMD ["executable", "param1", "param2"?]
这是使用 CMD 的首选方式。一个 Dockerfile 中只能有一个 CMD。如果我们使用多个 CMD,则只执行最后一个。

COPY

该指令用于将新文件或目录从源文件复制到目的地的容器。
例如
COPY abc/ /xyz
规则
源路径必须在构建的上下文中。我们不能 COPY ../something/something 因为 docker 构建的第一步是将上下文目录(和子目录)发送到 docker 守护进程。 如果 source 是一个目录,则该目录的全部内容都会被复制,包括文件系统元数据。

WORKDIR

WORKDIR 用于为 Dockerfile 中跟在它之后的任何 RUN、CMD 和 COPY 指令设置工作目录。如果工作目录不存在,则默认创建。
我们可以在 Dockerfile 中多次使用 WORKDIR。
例如
WORKDIR /var/www/html
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4