常用指令
ARG
用途
申明创建镜像过程中使用的变量
用法
ARG tag=latest
FROM
用途
指定基础镜像,写在第一行
用法
FROM nginx:latest
LABEL
用途
给镜像元数据添加标签
用法
LABEL author=lglbc
EXPOSE
用途
申明需要需要的端口,但是不会做端口映射
用法
EXPOSE 80 443
ENV
用途
指定环境变量,在后续容器中也会存在
用法
ENV key=value key1=value1
ENTRYPOINT
用途
设置镜像的默认入口命令,容器启动时,首先会去执行这个命令
用法
ENTRYPOINT [“ls” “-l”]
WORKDIR
用途
配置工作目录
用法
WORKDIR /a
ONBUILD
用途
build镜像时,优先执行的指令,只会在子镜像中执行
用法
ONBUILD 任意dockerfile 指令
操作指令
RUN
用途
运行指定命令
用法
RUN ls -l
CMD
用途
CMD 指令用来指定启动容器时默认执行的命令 。与run不同之处在于这个只能出现一次,如果出现多次,则只有最后一条生效
用法
CMD java -jar app.jar
ADD
用途
添加内容到镜像
用法
ADD ./*.jar /app/
COPY
用途
复制内容到镜像,如果是本地目录推荐使用COPY
用法
COPY ./*.jar /app/
实战案例