summaryrefslogtreecommitdiff
path: root/devdocs/docker/engine%2Freference%2Fcommandline%2Fplugin_upgrade%2Findex.html
blob: cdc99b446e82377affe3224bd59e7c430dc69843 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<h1>docker plugin upgrade</h1>  <p><br></p> <p>Upgrade an existing plugin</p> <h2 id="usage">Usage</h2> <div class="highlight"><pre class="highlight" data-language="">$ docker plugin upgrade [OPTIONS] PLUGIN [REMOTE]
</pre></div> <p>Refer to the <a href="#options">options section</a> for an overview of available <a href="#options"><code class="language-plaintext highlighter-rouge">OPTIONS</code></a> for this command.</p> <h2 id="description">Description</h2> <p name="extended-description">Upgrades an existing plugin to the specified remote plugin image. If no remote is specified, Docker will re-pull the current image and use the updated version. All existing references to the plugin will continue to work. The plugin must be disabled before running the upgrade.</p> <p>For example uses of this command, refer to the <a href="#examples">examples section</a> below.</p> <h2 id="options">Options</h2> <table> <thead> <tr> <td>Name, shorthand</td> <td>Default</td> <td>Description</td> </tr> </thead> <tbody> <tr> <td><code class="language-plaintext highlighter-rouge">--disable-content-trust</code></td> <td><code class="language-plaintext highlighter-rouge">true</code></td> <td>Skip image verification</td> </tr> <tr> <td><code class="language-plaintext highlighter-rouge">--grant-all-permissions</code></td> <td></td> <td>Grant all permissions necessary to run the plugin</td> </tr> <tr> <td><code class="language-plaintext highlighter-rouge">--skip-remote-check</code></td> <td></td> <td>Do not check if specified remote plugin matches existing plugin image</td> </tr>  </tbody> </table>  <h2 id="examples">Examples</h2> <p>The following example installs <code class="language-plaintext highlighter-rouge">vieus/sshfs</code> plugin, uses it to create and use a volume, then upgrades the plugin.</p> <div class="highlight"><pre class="highlight" data-language="">$ docker plugin install vieux/sshfs DEBUG=1

Plugin "vieux/sshfs:next" is requesting the following privileges:
 - network: [host]
 - device: [/dev/fuse]
 - capabilities: [CAP_SYS_ADMIN]
Do you grant the above permissions? [y/N] y
vieux/sshfs:next

$ docker volume create -d vieux/sshfs:next -o sshcmd=root@1.2.3.4:/tmp/shared -o password=XXX sshvolume

sshvolume

$ docker run -it -v sshvolume:/data alpine sh -c "touch /data/hello"

$ docker plugin disable -f vieux/sshfs:next

viex/sshfs:next

# Here docker volume ls doesn't show 'sshfsvolume', since the plugin is disabled
$ docker volume ls

DRIVER              VOLUME NAME

$ docker plugin upgrade vieux/sshfs:next vieux/sshfs:next

Plugin "vieux/sshfs:next" is requesting the following privileges:
 - network: [host]
 - device: [/dev/fuse]
 - capabilities: [CAP_SYS_ADMIN]
Do you grant the above permissions? [y/N] y
Upgrade plugin vieux/sshfs:next to vieux/sshfs:next

$ docker plugin enable vieux/sshfs:next

viex/sshfs:next

$ docker volume ls

DRIVER              VOLUME NAME
viuex/sshfs:next    sshvolume

$ docker run -it -v sshvolume:/data alpine sh -c "ls /data"

hello
</pre></div> <h2 id="parent-command">Parent command</h2> <table> <thead> <tr> <th style="text-align: left">Command</th> <th style="text-align: left">Description</th> </tr> </thead> <tbody> <tr> <td style="text-align: left"><a href="../plugin/index">docker plugin</a></td> <td style="text-align: left">Manage plugins</td> </tr> </tbody> </table> <h2 id="related-commands">Related commands</h2> <table> <thead> <tr> <td>Command</td> <td>Description</td> </tr> </thead> <tbody> <tr> <td><a href="../plugin_create/index">docker plugin create</a></td> <td>Create a plugin from a rootfs and configuration. Plugin data directory must contain config.json and rootfs directory.</td> </tr> <tr> <td><a href="../plugin_disable/index">docker plugin disable</a></td> <td>Disable a plugin</td> </tr> <tr> <td><a href="../plugin_enable/index">docker plugin enable</a></td> <td>Enable a plugin</td> </tr> <tr> <td><a href="../plugin_inspect/index">docker plugin inspect</a></td> <td>Display detailed information on one or more plugins</td> </tr> <tr> <td><a href="../plugin_install/index">docker plugin install</a></td> <td>Install a plugin</td> </tr> <tr> <td><a href="../plugin_ls/index">docker plugin ls</a></td> <td>List plugins</td> </tr> <tr> <td><a href="../plugin_push/index">docker plugin push</a></td> <td>Push a plugin to a registry</td> </tr> <tr> <td><a href="../plugin_rm/index">docker plugin rm</a></td> <td>Remove one or more plugins</td> </tr> <tr> <td><a href="../plugin_set/index">docker plugin set</a></td> <td>Change settings for a plugin</td> </tr> <tr> <td><a href="index">docker plugin upgrade</a></td> <td>Upgrade an existing plugin</td> </tr> </tbody> </table> <div class="_attribution">
  <p class="_attribution-p">
    &copy; 2019 Docker, Inc.<br>Licensed under the Apache License, Version 2.0.<br>Docker and the Docker logo are trademarks or registered trademarks of Docker, Inc. in the United States and/or other countries.<br>Docker, Inc. and other parties may also have trademark rights in other terms used herein.<br>
    <a href="https://docs.docker.com/engine/reference/commandline/plugin_upgrade/" class="_attribution-link">https://docs.docker.com/engine/reference/commandline/plugin_upgrade/</a>
  </p>
</div>