插件 V2 的插件配置版本 1
本文档概述了 V0 插件配置的格式。
插件配置描述了 Docker 引擎插件的各种组成部分。 插件配置可以使用以下媒体类型序列化为 JSON 格式:
| 配置类型 | 媒体类型 |
|---|---|
| 配置 | application/vnd.docker.plugin.v1+json |
配置字段说明
Config 提供了在注册表中处理 V0 插件格式的基础可访问字段。
description字符串插件描述
documentation字符串关于该插件的文档链接
interface插件接口插件实现的接口,由以下字段组成的结构体:
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 之外进行绑定挂载,因此其内容在升级时会得以保留。
envPluginEnv 数组插件的环境变量,由以下字段组成的结构体:
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": ""
}