Docker命令运行Rancher
#
Docker 命令运行 RancherRancher 整合了原生 Docker CLI,所以 Rancher 可以和其它 DevOps 和 Docker 工具同时使用。从高层次上,这意味着如果您在 Rancher 外启动、停止、或销毁一个容器,Rancher 能检测到相应的变化和更新。
#
Docker 事件监控Rancher 通过实时监控所有主机上 Docker 事件来更新自己的状态。因此,当容器在 Rancher 外启动、停止、或销毁时(比如,直接在主机上执行docker stop sad_einstein
),Rancher 能检测到这些变化和更新,并且相应地更新自己的状态。
注意: 目前的一个局限是:我们要等到容器启动(而不是创建)才能把容器导入到 Rancher。 运行
docker create ubuntu
不会使相应的容器出现在 Rancher UI,但运行docker start ubuntu
或docker run ubuntu
会.
您可以在主机上运行docker events
来观察 Docker 事件流。这个事件流就是 Rancher 正在监听的事件流。
#
添加 Docker 直接启动的容器到 Rancher 的网络您可以在 Rancher 外启动容器,然后把它们添加到 Rancher 管理的网络中。 这意味着这些容器可以参与夸主机网络。要激活这个功能,创建容器时把io.rancher.container.network
标签设为true
。下面是一个例子:
请查阅Rancher 中的网络了解更多关于 Rancher 管理的网络和夸主机网络的详情。
#
导入已有容器Rancher 支持在注册主机的时候倒入已有的容器。当您用 Rancher UI 上的自定义命令注册主机时, 任何当前在该主机上的容器都能被检测到,并且会被导入到 Rancher。
#
周期性同步状态除了实时监控 Docker 事件之外,Rancher 还会周期性地和主机同步状态。每 5 秒钟主机就会向 Rancher 报告主机上的所有容器的状态,以保证 Rancher 中的状态和主机中的状态同步。这能够防止由于网络中断或服务器重启而导致 Rancher 遗漏某些 Docker 事件。 用这种方式来保持同步,主机上的容器的状态为单一数据源。比如, 如果 Rancher 认为一个容器正在运行,但它在主机上实际是停止的,Rancher 会把容器的状态更新为停止
,但 Rancher 不会尝试重启容器。