Dockerfile基础分享
关键字
dockerfile
中以#开头的行全为注释行
from <image>:<tag>
指定基础镜像
maintainer <name>
指定维护者信息
run <command> 或 run ["executable file", "parameter1", ...]
在当前镜像中执行指定命令,执行的结果会被镜像保存
cmd 用法类似于run,用于指定docker容器启动时执行的命令。dockerfile中只能有一个cmd,并且此cmd命令会被启动
docker容器时指定的参数覆盖
label <key>=<value> <key>=<value>
为docker镜像指定meta信息,同时会覆盖基础镜像中的meta信息
expose <port> <port> ....
指定暴露的端口号
env <key>=<value> 或者 env <key> <value>
指定镜像的*环境变量*,会被镜像保存下来
add <src> <des>
拷贝主机的文件或者目录到镜像中。此命令会**自动解压tar文件**
copy <src> <des> 和add命令类似,但此命令不会自动解压tar文件
entrypoint <command> 或 entrypoint ["executable file", "parameter1", ...]
配置容器启动后启动的命令,类似`cmd`,但此命令**不会被启动docker容器时指定的参数覆盖**
volume ["/data/"]
指定一个可以从主机或者其他容器挂载的**挂载点**
user username
指定后续操作所用的**用户名**
workdir <dir path>
为后续操作指定工作目录
onbuild <command>
指定当此镜像作为基础镜像时指定的命令,会在`from`之后执行