- 时间:2021-01-26 09:32 编辑: 来源: 阅读:
- 扫一扫,手机访问
摘要:Dockerfile基础分享
[b]关键字[/b]
[code]Dockerfile[/code]中以#开头的行全为注释行
[code]FROM <image>:<tag>[/code]
指定基础镜像
[code]MAINTAINER <name>
[/code]
指定维护者信息
[code]RUN <command> 或 RUN ["executable file", "parameter1", ...][/code]
在当前镜像中执行指定命令,执行的结果会被镜像保存
CMD 用法类似于RUN,用于指定Docker容器启动时执行的命令。Dockerfile中只能有一个CMD,并且此CMD命令会被启动
Docker容器时指定的参数覆盖
[code]LABEL <key>=<value> <key>=<value>[/code]
为Docker镜像指定meta信息,同时会覆盖基础镜像中的meta信息
[code]EXPOSE <port> <port> ....[/code]
指定暴露的端口号
[code]ENV <key>=<value> 或者 ENV <key> <value>[/code]
指定镜像的*环境变量*,会被镜像保存下来
[code]ADD <src> <des>[/code]
拷贝主机的文件或者目录到镜像中。此命令会**自动解压tar文件**
COPY <src> <des> 和ADD命令类似,但此命令不会自动解压tar文件
[code]ENTRYPOINT <command> 或 ENTRYPOINT ["executable file", "parameter1", ...][/code]
配置容器启动后启动的命令,类似`CMD`,但此命令**不会被启动Docker容器时指定的参数覆盖**
[code]VOLUME ["/data/"][/code]
指定一个可以从主机或者其他容器挂载的**挂载点**
[code]USER username[/code]
指定后续操作所用的**用户名**
[code]WORKDIR <dir path>[/code]
为后续操作指定工作目录
[code]ONBUILD <command>
[/code]
指定当此镜像作为基础镜像时指定的命令,会在`FROM`之后执行