索鸟网

  1. 首页
  2. 一张图搞懂容器所有操作 - 每天5分钟玩转 Docker 容器技术(26)

一张图搞懂容器所有操作 - 每天5分钟玩转 Docker 容器技术(26)


前面我们已经讨论了容器的各种操作,对容器的生命周期有了大致的理解,下面这张状态机很好地总结了容器各种状态之间是如何转换的。

如果掌握了前面的知识,要看懂这张图应该不难。不过有两点还是需要补充一下:

  1. 可以先创建容器,稍后再启动。 

    ① docker create 创建的容器处于 Created 状态。
    ② docker start 将以后台方式启动容器。 docker run 命令实际上是 docker create 和 docker start 的组合。

  2. 只有当容器的启动进程 退出 时,--restart 才生效。 

    退出包括正常退出或者非正常退出。这里举了两个例子:启动进程正常退出或发生 OOM,此时 docker 会根据 --restart 的策略判断是否需要重启容器。但如果容器是因为执行 docker stop 或docker kill 退出,则不会自动重启。

好了,容器操作就讨论到这里,下一节我们将学习如何限制容器对资源的使用。


Docker 教程 容器

来源地址:http://cloudman.blog.51cto.com/10425448/1933659 版权归作者所有!

相关教程

  • 容器常用操作 - 每天5分钟玩转 Docker 容器技术(25)

    前面讨论了如何运行容器,本节学习容器的其他常用操作。stop/start/restart 容器通过 docker stop 可以停止运行的容器。容器在 docker host 中实际上是一个进程,docker stop 命令本质上是向该进程发送一个 SIGTERM 信号。如果想快速停止容器,可使用 docker kill 命令,其
  • 如何运行容器?- 每天5分钟玩转 Docker 容器技术(22)

    上一章我们学习了如何构建 Docker 镜像,并通过镜像运行容器。本章将深入讨论容器:学习容器的各种操作,容器各种状态之间如何转换,以及实现容器的底层技术。运行容器docker run 是启动容器的方法。在讨论 Dockerfile 时我们已经学习到,可用三种方式指定容器启动时执行的命令:CMD 指令。ENDPOINT 指令。在 docker run 
  • Weave Scope 容器地图 - 每天5分钟玩转 Docker 容器技术(80)

    Weave Scope 的最大特点是会自动生成一张 Docker 容器地图,让我们能够直观地理解、监控和控制容器。千言万语不及一张图,先感受一下。下面开始实践 Weave Scope。安装执行如下脚本安装运行 Weave Scope。curl -L git.io/scope -o /usr/local/bin/scopechmod a+x /usr/local/bin/scope
  • 容器生态系统 - 每天5分钟玩转容器技术(2)

    对于像容器这类平台级别的技术,通常涉及的知识范围会很广,相关的软件,解决方案也会很多,初学者往往容易迷失。那怎么办呢?我们可以从生活经验中寻找答案。当我们去陌生城市旅游想了解一下这个城市一般我们会怎么做?我想大部分人应该会打开手机看一下这个城市的地图:城市大概的位置和地理形状是什么?都由哪几个区或县组成?主要的交通干道是哪几条?同样的道理,学习容器技术我们可以先从天上鸟瞰一下:容
  • 实现容器的底层技术 - 每天5分钟玩转 Docker 容器技术(30)

    为了更好地理解容器的特性,本节我们将讨论容器的底层实现技术。cgroup 和 namespace 是最重要的两种技术。cgroup 实现资源限额, namespace 实现资源隔离。cgroupcgroup 全称 Control Group。Linux 操作系统通过 cgroup 可以设置进程使用 CPU、内存 和 IO 资源的限额。相信你已经猜到了:前面我们看到的--cpu-s
  • 如何自定义容器网络?- 每天5分钟玩转 Docker 容器技术(33)

    除了 none, host, bridge 这三个自动创建的网络,用户也可以根据业务需要创建 user-defined 网络。Docker 提供三种 user-defined 网络驱动:bridge, overlay 和 macvlan。overlay 和 macvlan 用于创建跨主机的网络,我们后面有章节单独讨论。我们可通过 bridge 驱动创建类似前面默认的 bridge
  • docker managed volume - 每天5分钟玩转 Docker 容器技术(40)

    docker managed volume 与 bind mount 在使用上的最大区别是不需要指定 mount 源,指明 mount point 就行了。还是以 httpd 容器为例:我们通过 -v 告诉 docker 需要一个 data volume,并将其 mount 到 /usr/local/apache2/htdocs。那么这个 data volum