dockerfile 基本语法
FROM baseImage
使用那个基础镜像
MAINTAINER name
作者信息,谁写的
RUN command
构建的时候运行的命令 例如: RUN yum install nginx -y
ADD source dest
1. 拷贝本地的文件到镜像中,"本地"是指上下文,docker会画地为牢,在build的时候,指定那个目录为上下文,就会打包此目录下的所有发给docker daemon,
例如: docker build -t nginx:v3 . 当前目录就是上下文环境
2. 如果source 是目录就会拷贝该目录下的所有到镜像的dest目录里
3. 如果是tar包,会自动解压
COPY source dest
跟ADD 相似 但是不会做解压tar的操作
CMD [ "executable" ]
这个也是执行命令 但是是在启动docker的时候执行的
ENTRYPOINT [ "executable" ]
跟CMD类似,但是 不会被命令行的参数覆盖,而且如果同时出现它和CMD,那么CMD的内容将作为参数传给它
LABEL key="value"
添加元数据 version=1 time=2020
EXPOSE port
暴露某个端口
ENV key=value
配置环境变量
VOLUME [ "/data" ]
用于持久化数据的目录
WORKDIR /the/workdir/path
类似与cd 切到容器某个目录
USER daemon
指定容器运行时的用户名
ARG name=defaultValue
build过程中的参数
ONBUILD INSTRUCTION
当所构建的镜像被用做其它镜像的基础镜像,该镜像中的触发器将会被触发
感谢关注