dockerfile指令

2023-12-25 11:48:44

FROM

作用

用于提供构建所需镜像的基础镜像

用法

FROM 镜像

FROM centos:latest

CMD

作用

用来定义容器运行时的默认命令,可以在使用docker run的时候覆盖掉CMD中定义的命令

运行时机

运行容器的时候

用法

CMD [“命令1”,“参数1”,“参数2”]

CMD [ "nginx", "-g", "daemon off" ]

ENV

作用

用来定义环境变量

用法

ENV 变量名= “变量值”

ENV DIR = "holle"
#也可以指定目录
ENV DIR = "/app/cdd"

WORKDIR

作用

用于设置当前工作目录,如果该目录不存在会自动创建

用法

WORKDIR 目录

WORKDIR /root/app

RUN

作用

用来定义构建过程中要执行的命令

用法

RUN 命令

RUN echo hello > content.txt

ADD

作用

把构建上下文中的文件或者网络文件添加到镜像中

如果文件是一个压缩包会自动解压,如果是网络中的文件并不会解压

用法

ADD 原路径 目标路径

#将sg-blog-vue.tar.gz文件添加到Docker镜像的当前目录
ADD sg-blog-vue.tar.gz .

EXPOSE

作用

暴露需要发布的端口,让镜像使用者知道应该发布哪些端口

用法

EXPOSE 端口号1 端口号2 …

EXPOSE 80

COPY

作用

从构建上下文中复制内容到镜像中

用法

COPY 原路径 目标路径

COPY sg-blog-vue.tar.gz .

ADD和COPY选择

add可以自动解压,下载网络文件

copy就是单纯的拷贝

ENTRYPOINT

作用

用来定义容器运行时的默认命令,docker run的时候无法覆盖掉ENTRYPOINT里的内容

运行时机

运行容器的时候

用法

ENTRYPOINT [“命令1”,“参数1”,“参数2”]

ENTRYPOINT [ "nginx", "-g", "daemon off" ]

编译构建

#1. `docker build`:这是 Docker 的构建命令
#2. `-t test0:6`:这个选项用来指定构建的镜像的名称和标签
#3. `-f Test01`:这个选项用来指定 Dockerfile 的路径
#4. `.`:这个点表示当前目录,即 Dockerfile 所在的目录。
#这条命令表示:使用当前目录下的 `Test01` 文件作为 Dockerfile,构建一个名为 `test0`、版本标签为 `6` 的 Docker 镜像
dockerfile build -t test0:6 -f Test01 .

文章来源:https://blog.csdn.net/qq_70491074/article/details/135193862
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。