我试图连接到对接事件总线,以侦听集群上发生的各种事件,例如离开和加入集群的节点、创建的服务等问题。
dockerpy
库来侦听此类事件?发布于 2018-11-20 17:13:20
来自docker文档:https://docs.docker.com/engine/api/v1.39
Docker中的各种对象在发生事件时都会报告事件。 容器报告以下事件:附加、提交、复制、创建、销毁、分离、模具、exec_create、exec_detach、exec_start、exec_die、导出、health_status、杀死、oom、暂停、重命名、调整大小、重新启动、开始、停止、顶部、取消暂停和更新 服务报告以下事件:创建、更新和删除 节点报告这些事件:创建、更新和删除
以及来自dockerpy文档:https://docker-py.readthedocs.io/en/stable/api.html?highlight=event
事件(since=None,until=None,filters=None,decode=None) 从服务器获得实时事件.类似于docker命令. 参数:因为(UTC日期时间或int) -从这里获取事件到(UTC日期时间或int) -获取事件直到此点过滤器(dict) -按事件时间、容器或图像解码(bool)过滤事件-如果设置为true,流将被解码为动态分片。默认情况下为假。返回: docker.types.daemon.CancellableStream生成器 引发: docker.errors.APIError -如果服务器返回错误。
发布于 2019-08-07 23:56:13
基于Docker正式文档https://docs.docker.com/engine/reference/commandline/events/,您可以使用:
docker events --filter 'scope=swarm'
如果您想在dockerpy中使用它,可以使用:
import docker
client = docker.APIClient()
for event in client.events(decode=True, filters={"scope":"swarm"}):
print(event)
https://stackoverflow.com/questions/42286085
复制相似问题