- ADD复制文件
ADD命令用于复制文件,格式为:
- ADD <src>...<dest>
- ADD ["<src>"..."<dest>"]
从src目录复制一个文件到容器的dest,其中src可以是Dockerfile所在目录的相对路径
例如:ADD ./target/fae-ms-api.jar app.jar
- ARG设置构建参数
用于设置构建参数,类似于ENV,和ENV不同的是,ARG设置的是构建时的环境变量,在容器运行时时不会存在这些变量的
- ARG <name> [=<value>]
例如:ARG user=somuser
- CMD容器启动命令
每个Dockerfile只有一个CMD命令,如果指定了多个CMD命令,那么只有最后一条才会被执行,如果启动容器时制定了运行的命令,则会覆盖CMD命令
- CMD ["executable","param1","param2"]
- CMD ["param1","param2"](为ENTRYPOINT指令提供预设参数)
- CMD command pram1 param2(在shell中执行)
- ENTRYPOINT入口点
格式为:
- ENTRYPOINT ["executable","param1","param2"]
- ENTRYPOINT command pram1 param2
- ENV设置环境变量
用于设置环境变量,格式为:
- ENV <key> <value>
- ENV <key>=<value>...
例如:ENV JAVA_OPTS=""
- FROM 指定基础镜象
使用FROM指定基础镜像,FROM指令必须指定且需要写在其他的指令之前,FROM指令后的所有指令都依赖于该指令所指定的镜像
- FROM <image>
- FROM <image>:<tag>
- FROM <image>@<digest>
例如:FROM hub.skyinno.com/fcae/jre-mos:latest
- MAINTAINER指定维护者信息
用于为Dockerfile署名
- RUN执行命令
- RUN <command>
- RUN <"executable","param1","param2">
例如:RUN sh -c 'touch /app.jar'