Dockerfile 基本指令

2019-03-19  本文已影响0人  赛亚人之神

1. RUN

RUN ["/bin/bash", "-c", "<executable>", "<param1>"]

2. CMD 指令

3. ENTRYPOINT

4. USER

4. HEALTHCHECK

HEALTHCHECK --interval=5m --timeout=3s \
CMD curl -f http://localhost/ || exit 1

wget -O - -q www.bauidu.com:这个命令可以把html打印到shell上

5. SHELL

如果不是 json 数组格式的指令,默认的 shell 在 Linux 是 ["/bin/sh", "-c"],在 Windows 是 ["cmd", "/S", "/C"]这里的指令用于运行程序默认要运行的 SHELL

  1. shell 指令在 Dockerfile 中必须使用 JSON 格式进行重写
  2. shell 指令可以出现多次,每个 shell 指令覆盖之前的 shell 指令,并且影响后续的指令

6. STOPSIGNAL
进程号id 为 1 的,可以接收 docker stop 命令,从而能够停止主进程,从而停止容器。如 stop 发送的是 15,signal 是无符号整型数字(必须匹配 kernal 的 syscall table),如 9 ,也可以是 SIGNAME,如 SIGKILL

7. ARG
使用 ARG 指令可以在 docker build 过程中传值,使用 --build-arg <varname>=<value>,如果用户指定的构建参数在 Dockerfile 中未定义,构建会输出警告信息

一个 Dockerfile 中可能包含多个 ARG 指令,一个 ARG 可能包含一个默认值。比如:
ARG version=1.14
ARG user=mageedu

8. ONBUILD

上一篇 下一篇

猜你喜欢

热点阅读