插件配置 版本1 的插件 V2
本文档概述了V0插件配置的格式。
插件配置描述了Docker引擎插件的各种组成部分。 插件配置可以序列化为以下媒体类型的JSON格式:
| Config Type | Media Type |
|---|---|
| config | application/vnd.docker.plugin.v1+json |
配置字段描述
Config 提供了用于在注册表中处理 V0 插件格式的基本可访问字段。
description字符串插件的描述
documentation字符串链接到插件的文档
interfacePluginInterface由插件实现的接口,结构包含以下字段:
types字符串数组类型指示插件当前实现的接口。
支持的类型:
docker.volumedriver/1.0docker.networkdriver/1.0docker.ipamdriver/1.0docker.authz/1.0docker.logdriver/1.0docker.metricscollector/1.0
socket字符串Socket 是引擎用于与插件通信的套接字名称。 套接字将在
/run/docker/plugins中创建。
entrypoint字符串数组插件的入口点,请参阅
ENTRYPOINTworkdir字符串插件的工作目录,请参阅
WORKDIRnetwork插件网络插件的网络,由以下字段组成的结构:
type字符串网络类型。
支持的类型:
bridgehostnone
mounts插件挂载数组插件的挂载,结构由以下字段组成。 参见
MOUNTS.name字符串挂载点的名称。
description字符串挂载的描述。
source字符串挂载的源。
destination字符串挂载的目标。
type字符串挂载类型。
options字符串数组挂载的选项。
ipchost布尔值访问主机IPC命名空间。
pidhost布尔值访问主机PID命名空间。
propagatedMount字符串要作为rshared挂载的路径,以便Docker可以看到该路径下的挂载。这对于卷插件非常有用。此路径将在插件rootfs之外进行绑定挂载,因此在升级时其内容得以保留。
env插件环境数组插件的环境变量,由以下字段组成的结构体:
name字符串环境变量的名称。
description字符串环境变量的描述。
value字符串环境变量的值。
args插件参数插件的参数,由以下字段组成的结构体:
name字符串参数的名称。
description字符串参数的描述。
value字符串数组参数的值。
linux插件Linux
示例配置
以下示例展示了 'tiborvass/sample-volume-plugin' 插件的配置。
{
"Args": {
"Description": "",
"Name": "",
"Settable": null,
"Value": null
},
"Description": "A sample volume plugin for Docker",
"Documentation": "https://docs.docker.com/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": ""
}