Dockerfile

# comment
instruction rgument

指令包含

  • FROM
  • MAINTAINER
  • RUN
  • EXPOSE
  • CMD
  • ENTERYPOINT
  • ADD
  • COPY
  • VOLUME
  • WORKDIR
  • ENV
  • USER
  • ONBUILD

FROM

  • FROM
  • FROM :
  • 已存在镜像
  • 基础镜像
  • 第一条非注释镜像

MAINTAINR

  • MAINTAINR
  • 作者

RUN

  • RUN (shell模式)
  • RUN ['executable', 'param1', 'param2'] (exex模式)
    以&&连接

EXPOSE

  • EXPOSE [...]
    指定运行该镜像使用端口

CMD

  • CMD ['executable', 'param1', 'parm2'] (exec模式)
  • CMD command param1 param2(shell模式)
  • CMD ['param1','param2']
    使用run指定命令会覆盖cmd中的命令

ENTRYPOINT

  • ENTRYPOINT ['executable', 'param1', 'parm2'] (exec模式)
  • ENTRYPOINT command param1 param2(shell模式)
    不会被run覆盖
    可以使用docker run --entrypoint覆盖

ADD

  • ADD ...
  • ADD [""...""] (适用文件有空格的)
    实例:COPY index.html /usr/share/niginx/html/
    index.html与file再同一目录下

COPY

  • COPY ...
  • COPY [""...""] (适用文件有空格的)
ADD vs COPY
ADD 包含tar解压功能
单纯使用复制文件,使用COPY

VOLUM ['/data']

WORKDIR /path/to/workdir

指定工作目录
绝对路径

ENV 环境变量

  • ENV
  • ENV =

USER daemon

USER niginx

ONBUILD [INSTRUCTION]

ONBUILD COPY
触发器

你可能感兴趣的:(Dockerfile)