Docker中的“ CMD [“-?”]“是什么意思?

时间:2018-07-10 02:00:44

标签: docker

《 Docker Book v17.12.0-ce》第223页

  

清单6.19:我们的战机提取程序
     来自ubuntu:16.04
  维护者詹姆斯·特恩布尔
  ENV REFRESHED_AT 2016-06-01
  运行apt-get -yqq更新
  运行apt-get -yqq install wget
  音量[“ / var / lib / tomcat7 / webapps /”]
  WORKDIR / var / lib / tomcat7 / webapps /
  ENTRYPOINT [“ wget”]
   CMD [“-?” ]

     

这个非常简单的图像可以做一件事:它可以从URL中获取任何信息   在从容器运行容器并将文件存储在/ var / lib中时指定   / tomcat7 / webapps /目录。该目录也是一个卷,正在工作   任何容器的目录。我们将与Tomcat分享此卷   服务器并运行其内容。   最后,ENTRYPOINT和CMD指令使我们的容器在没有   指定了URL;他们通过在容器返回wget帮助输出来实现   在没有URL的情况下运行。

任何男孩都可以告诉我“ CMD [“-?”]“是什么意思

我知道ENTRYPOINT和CMD的概念, 我不明白的是“-”的意思。在“ wget-?”中

2 个答案:

答案 0 :(得分:1)

运行Docker容器时,它只需将“入口点”和“命令”连接起来即可构建命令行。它们来自docker run命令行中的不同位置;但是如果您不提供--entrypoint选项,那么将使用Dockerfile中的ENTRYPOINT,并且如果在映像名称之后未提供任何其他命令行参数,则{{1} }。

因此,有两个调用:

CMD

答案 1 :(得分:0)

我知道了,作者犯了笔误。 CMD中的参数应为“ -h”。 因为在稍后的内容中他说:“最后,ENTRYPOINT和CMD指令允许在没有指定URL的情况下运行我们的容器;它们通过在没有URL的情况下运行容器来返回wget帮助输出,从而使我们的容器运行。”