Dockerfile

Dockerfile 学习笔记

刘启春

Dockerfile

Dockerfile 的作用是用来构建 docker 镜像(image),使用 Dockerfile 我们可以构建出更符合自己需要的镜像,而编写好的 Dockerfile 我们可以多次使用。

Dockerfile 中的保留字

Dockerfile 中的保留字在使用时全部需要大写,保留字不能再作为属性的值使用。

  • FROM:指定当前镜像是基于哪个镜像来构建的
  • RUN:构建镜像是需要运行的指令
  • EXPOSE:当前容器对外暴露的端口
  • WORKDIR:指定容器创建后,终端默认的进入的路径(PATH)
  • EVN:用来定义在构建过程中设置环境变量,使用$引用
  • ADD:把宿主机目录下的文件和目录拷贝到容器,如果是 tar 文件则会镜像自动解压,如果 ADD 的第一个参数是 URL,则会下载文件然后拷贝到容器
  • COPY:把宿主机目录下的文件拷贝到容器,不对被拷贝进行操作,功能通 cp 命令
  • VOLUME:设置容器容器数据卷,用于容器中数据持久化存储
  • CMD:指定一个容器启动时运行的命令,使用 docker run 命令最后加的命令会覆盖 CMD 指定的命令
  • ENTRYPOINT:指定一个容器启动时要运行哪个命令,功能同 CMD 但不能被覆盖。通常与 CMD 配合使用,注意:配合使用时要用数组方式执行命令,即 ENTRYPOINT ["java","-jar"]