当前位置:嗨网首页>书籍在线阅读

14-查看容器详情

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

7.2.11 查看容器详情

在前面的示例当中,读者可能发现当运行 docker container run 命令的时候,并没有指定容器中的具体应用。但是容器却启动了一个简单的Web服务。这是如何发生的?

当构建Docker镜像的时候,可以通过嵌入指令来列出希望容器运行时启动的默认应用。如果运行 docker image inspect 命令来查看运行容器时使用的镜像,就能看到容器启动时将要运行的应用列表了。

$ docker image inspect nigelpoulton/pluralsight-docker-ci
[
    {
        "Id": "sha256:07e574331ce3768f30305519...49214bf3020ee69bba1",
        "RepoTags": [
            "nigelpoulton/pluralsight-docker-ci:latest"
            <Snip>
        ],
        "Cmd": [
            "/bin/sh",
            "-c",
            "#(nop) CMD [\"/bin/sh\" \"-c\" \"cd /src \u0026\u0026 node \
              .app.js\"]"
        ],
<Snip>

为了方便阅读,仅截取输出内容中我们感兴趣的部分。

Cmd 一项中展示了容器将会执行的命令或应用,除非在启动的时候读者指定另外的应用。如果去掉示例脚本中的转义字符,可以得到这样的命令: /bin/sh -c "cd /src && node ./app.js 。这是基于该镜像的容器会默认运行的应用。

在构建镜像时指定默认命令是一种很普遍的做法,因为这样可以简化容器的启动。这也为镜像指定了默认的行为,并且从侧面阐述了镜像的用途——可以通过Inspect镜像的方式来了解所要运行的应用。

本章示例到此为止。接下来了解一种快速清理系统的方式。