插件配置版本 2 插件的版本 1
本文档概述了 V0 插件配置的格式。
插件配置描述了 Docker Engine 插件的各种组成部分。插件配置可以使用以下媒体类型序列化为 JSON 格式
配置类型 | 媒体类型 |
---|---|
配置 | application/vnd.docker.plugin.v1+json |
配置字段描述
Config 提供了在注册表中使用 V0 插件格式的基本可访问字段。
description
字符串插件的描述
documentation
字符串关于插件的文档链接
interface
PluginInterface插件实现的接口,包含以下字段的结构体
types
字符串数组类型指示插件当前实现的接口。
支持的类型
docker.volumedriver/1.0
docker.networkdriver/1.0
docker.ipamdriver/1.0
docker.authz/1.0
docker.logdriver/1.0
docker.metricscollector/1.0
socket
字符串Socket 是引擎应用于与插件通信的套接字的名称。套接字将在
/run/docker/plugins
中创建。
entrypoint
字符串数组插件的入口点,请参见
ENTRYPOINT
workdir
字符串插件的工作目录,请参见
WORKDIR
network
PluginNetwork插件的网络,包含以下字段的结构体
type
字符串网络类型。
支持的类型
桥接
主机
无
mounts
PluginMount 数组插件的挂载,包含以下字段的结构体。请参见
挂载
。name
字符串挂载的名称。
description
字符串挂载的描述。
source
字符串挂载的来源。
destination
字符串挂载的目标。
type
字符串挂载类型。
options
字符串数组挂载的选项。
ipchost
布尔值访问主机 ipc 命名空间。
pidhost
布尔值访问主机 PID 命名空间。
propagatedMount
字符串要以 rshared 方式挂载的路径,以便该路径下的挂载对 Docker 可见。这对于卷插件很有用。此路径将在插件 rootfs 外部进行 bind 挂载,因此其内容在升级时会保留。
env
PluginEnv 数组插件的环境变量,包含以下字段的结构体
name
字符串环境变量的名称。
description
字符串环境变量的描述。
value
字符串环境变量的值。
args
PluginArgs插件的参数,包含以下字段的结构体
name
字符串参数的名称。
description
字符串参数的描述。
value
字符串数组参数的值。
linux
PluginLinux
示例配置
以下示例显示了“tiborvass/sample-volume-plugin”插件配置。
{
"Args": {
"Description": "",
"Name": "",
"Settable": null,
"Value": null
},
"Description": "A sample volume plugin for Docker",
"Documentation": "https://docs.dockerd.com.cn/engine/extend/plugins/",
"Entrypoint": [
"/usr/bin/sample-volume-plugin",
"/data"
],
"Env": [
{
"Description": "",
"Name": "DEBUG",
"Settable": [
"value"
],
"Value": "0"
}
],
"Interface": {
"Socket": "plugin.sock",
"Types": [
"docker.volumedriver/1.0"
]
},
"Linux": {
"Capabilities": null,
"AllowAllDevices": false,
"Devices": null
},
"Mounts": null,
"Network": {
"Type": ""
},
"PropagatedMount": "/data",
"User": {},
"Workdir": ""
}