Dockerfile基础命令有哪些

  介绍

本篇内容介绍了“Dockerfile基础命令有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

<强> Dockerfile基础命令

从基于基准镜像

<>之前得到centos  #制作基准镜像(基于centos:最新)   得到scratch  #不依赖任何基准镜像,(base 图像),从零构建   得到tomcat: 9.0.22-jdk8-openjdk

LABEL 及维护者——说明信息

 MAINTAINER  3337777777. com , #个人或机构名称
  LABEL 版本=?.0”;
  LABEL 描述=叭痔熳⒍?七分靠打拼,

WORKDIR -设置工作目录

 WORKDIR /usr/当地
  WORKDIR /usr/地方/newdir , #目标目录不存在,会自动创建
  #尽量使用绝对路径

添加,复制-复制文件

 ADD  hello /,, #复制到跟路径
  ADD  test.tar.gz /,,, #添加到更目录并解压
  # ADD 除了复制,还具备添加远程文件功能

ENV -设置环境常量

 ENV  JAVA_HOME /usr/地方/openjdk8
  RUN  $ {JAVA_HOME}/bin/java  -jar  test.jar
  #尽量使用环境常量,可提高程序维护性

Dockerfile执行指令

运行,CMD,入口点

运行:在建立构建时执行命令

入口点:容器启动时执行的命令

CMD:容器启动后执行默认的命令或参数

区别:不同执行时机

 Dockerfile基础命令有哪些

RUN -构建时运行

 RUN  yum  install  -y  vim , #壳命令格式
  RUN  [“yum",“install",“-y",“vim"], # exec命令格式

为什么码头工人要为运行采用两种书写格式呢?

这涉及到linux系统的一些底层原理。

壳运行方式

 Dockerfile基础命令有哪些

exec运行方式

使用执行方式,会用exec进程替换当前进程,并且保持PID不变。

执行完毕,直接退出,并不会退回之前的进程环境。

 Dockerfile基础命令有哪些”>,=在<img src=

在不清楚使用哪种方式的情况下,推荐使用Exec格式。

<强>入口点——启动命令

入口点(入口点)用于在容器启动时执行命令

Dockerfile中只有最后一个入口点会被执行

入口点(“ps"),#推荐使用Exec格式

<强> CMD -默认命令

CMD用于设置默认执行的命令

如Dockerfile中出现多个CMD,则只有最后一个执行

如容器启动时附加指令,则CMD被忽略

CMD [“ps",“-ef"),#推荐使用Exec格式

入口点和CMD联合使用

<>之前得到centos   (“ps") ENTRYPOINT    (“-ef") CMD    #这时入口点会和CMD联合使用,,ps  ef

Dockerfile基础命令有哪些