云计算核心技术Docker教程:Docker 插件生命周期

插件应该在 Docker 之前启动,在 Docker 之后停止。例如,在为支持 的平台打包插件时systemd,您可能会使用systemd依赖项来管理启动和关闭顺序。

插件应该在 Docker 之前启动,在 Docker 之后停止。例如,在为支持 的平台打包插件时systemd,您可能会使用systemd依赖项来管理启动和关闭顺序。

升级插件时,您应该先停止 Docker 守护进程,升级插件,然后再次启动 Docker。

插件激活

当一个插件第一次被引用时——无论是用户通过名称(例如docker run –volume-driver=foo)引用它 还是一个已经配置为使用正在启动的插件的容器——Docker 会在插件目录中查找命名插件并通过握手激活它. 请参阅下面的握手 API。

插件不会在 Docker 守护进程启动时自动激活。相反,它们只会在需要时懒惰地或按需激活。

systemd socket激活

插件也可以通过套接字激活systemd。官方插件助手 本身支持套接字激活。为了使插件被套接字激活,它需要一个service文件和一个socket文件。

service文件(例如/lib/systemd/system/your-plugin.service):

云计算核心技术Docker教程:Docker 插件生命周期

socket文件(例如/lib/systemd/system/your-plugin.socket):

云计算核心技术Docker教程:Docker 插件生命周期

这将允许插件在 Docker 守护进程连接到它们正在侦听的套接字时实际启动(例如,守护进程第一次使用它们或者插件中的一个意外关闭)。

API设计

插件 API 是基于 HTTP 的 RPC 风格的 JSON,很像 webhooks。

请求从Docker 守护进程流向插件。所以插件需要实现一个 HTTP 服务器并将其绑定到“插件发现”部分中提到的 UNIX 套接字。

所有请求都是 HTTPPOST请求。

API 通过 Accept 标头进行版本控制,该标头当前始终设置为 application/vnd.docker.plugins.v1+json.

给TA打赏
共{{data.count}}人
人已打赏
云计算

云安全日报210629:红帽OpenShift云应用平台发现执行任意代码漏洞,需要尽快升级

2021-6-29 16:08:42

云计算

韩国互联网银行巨头Kakao Bank将于8月上市 最多募资约146亿元

2021-6-29 20:33:35

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索