docker-sdk-rust/docs/PluginApi.md
2025-06-16 16:37:36 +07:00

11 KiB

\PluginApi

All URIs are relative to http://localhost/v1.51

Method HTTP request Description
get_plugin_privileges GET /plugins/privileges Get plugin privileges
plugin_create POST /plugins/create Create a plugin
plugin_delete DELETE /plugins/{name} Remove a plugin
plugin_disable POST /plugins/{name}/disable Disable a plugin
plugin_enable POST /plugins/{name}/enable Enable a plugin
plugin_inspect GET /plugins/{name}/json Inspect a plugin
plugin_list GET /plugins List plugins
plugin_pull POST /plugins/pull Install a plugin
plugin_push POST /plugins/{name}/push Push a plugin
plugin_set POST /plugins/{name}/set Configure a plugin
plugin_upgrade POST /plugins/{name}/upgrade Upgrade a plugin

get_plugin_privileges

Vecmodels::PluginPrivilege get_plugin_privileges(remote) Get plugin privileges

Parameters

Name Type Description Required Notes
remote String The name of the plugin. The :latest tag is optional, and is the default if omitted. [required]

Return type

Vecmodels::PluginPrivilege

Authorization

No authorization required

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json, text/plain

[Back to top] [Back to API list] [Back to Model list] [Back to README]

plugin_create

plugin_create(name, tar_context) Create a plugin

Parameters

Name Type Description Required Notes
name String The name of the plugin. The :latest tag is optional, and is the default if omitted. [required]
tar_context Option<std::path::PathBuf> Path to tar containing plugin rootfs and manifest

Return type

(empty response body)

Authorization

No authorization required

HTTP request headers

  • Content-Type: application/x-tar
  • Accept: application/json, text/plain

[Back to top] [Back to API list] [Back to Model list] [Back to README]

plugin_delete

models::Plugin plugin_delete(name, force) Remove a plugin

Parameters

Name Type Description Required Notes
name String The name of the plugin. The :latest tag is optional, and is the default if omitted. [required]
force Option<bool> Disable the plugin before removing. This may result in issues if the plugin is in use by a container. [default to false]

Return type

models::Plugin

Authorization

No authorization required

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json, text/plain

[Back to top] [Back to API list] [Back to Model list] [Back to README]

plugin_disable

plugin_disable(name, force) Disable a plugin

Parameters

Name Type Description Required Notes
name String The name of the plugin. The :latest tag is optional, and is the default if omitted. [required]
force Option<bool> Force disable a plugin even if still in use.

Return type

(empty response body)

Authorization

No authorization required

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json, text/plain

[Back to top] [Back to API list] [Back to Model list] [Back to README]

plugin_enable

plugin_enable(name, timeout) Enable a plugin

Parameters

Name Type Description Required Notes
name String The name of the plugin. The :latest tag is optional, and is the default if omitted. [required]
timeout Option<i32> Set the HTTP client timeout (in seconds) [default to 0]

Return type

(empty response body)

Authorization

No authorization required

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json, text/plain

[Back to top] [Back to API list] [Back to Model list] [Back to README]

plugin_inspect

models::Plugin plugin_inspect(name) Inspect a plugin

Parameters

Name Type Description Required Notes
name String The name of the plugin. The :latest tag is optional, and is the default if omitted. [required]

Return type

models::Plugin

Authorization

No authorization required

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json, text/plain

[Back to top] [Back to API list] [Back to Model list] [Back to README]

plugin_list

Vecmodels::Plugin plugin_list(filters) List plugins

Returns information about installed plugins.

Parameters

Name Type Description Required Notes
filters Option<String> A JSON encoded value of the filters (a map[string][]string) to process on the plugin list. Available filters: - capability=<capability name> - `enable= `

Return type

Vecmodels::Plugin

Authorization

No authorization required

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

plugin_pull

plugin_pull(remote, name, x_registry_auth, body) Install a plugin

Pulls and installs a plugin. After the plugin is installed, it can be enabled using the POST /plugins/{name}/enable endpoint.

Parameters

Name Type Description Required Notes
remote String Remote reference for plugin to install. The :latest tag is optional, and is used as the default if omitted. [required]
name Option<String> Local name for the pulled plugin. The :latest tag is optional, and is used as the default if omitted.
x_registry_auth Option<String> A base64url-encoded auth configuration to use when pulling a plugin from a registry. Refer to the authentication section for details.
body Option<Vecmodels::PluginPrivilege>

Return type

(empty response body)

Authorization

No authorization required

HTTP request headers

  • Content-Type: application/json, text/plain
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

plugin_push

plugin_push(name) Push a plugin

Push a plugin to the registry.

Parameters

Name Type Description Required Notes
name String The name of the plugin. The :latest tag is optional, and is the default if omitted. [required]

Return type

(empty response body)

Authorization

No authorization required

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json, text/plain

[Back to top] [Back to API list] [Back to Model list] [Back to README]

plugin_set

plugin_set(name, body) Configure a plugin

Parameters

Name Type Description Required Notes
name String The name of the plugin. The :latest tag is optional, and is the default if omitted. [required]
body Option<Vec>

Return type

(empty response body)

Authorization

No authorization required

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json, text/plain

[Back to top] [Back to API list] [Back to Model list] [Back to README]

plugin_upgrade

plugin_upgrade(name, remote, x_registry_auth, body) Upgrade a plugin

Parameters

Name Type Description Required Notes
name String The name of the plugin. The :latest tag is optional, and is the default if omitted. [required]
remote String Remote reference to upgrade to. The :latest tag is optional, and is used as the default if omitted. [required]
x_registry_auth Option<String> A base64url-encoded auth configuration to use when pulling a plugin from a registry. Refer to the authentication section for details.
body Option<Vecmodels::PluginPrivilege>

Return type

(empty response body)

Authorization

No authorization required

HTTP request headers

  • Content-Type: application/json, text/plain
  • Accept: application/json, text/plain

[Back to top] [Back to API list] [Back to Model list] [Back to README]