2016-10-14 18:30:36 -04:00
|
|
|
---
|
|
|
|
title: "update"
|
|
|
|
description: "The update command description and usage"
|
2016-11-03 18:48:30 -04:00
|
|
|
keywords: "resources, update, dynamically"
|
2016-10-14 18:30:36 -04:00
|
|
|
---
|
2015-12-28 06:19:26 -05:00
|
|
|
|
|
|
|
## update
|
|
|
|
|
2016-07-07 14:43:18 -04:00
|
|
|
```markdown
|
|
|
|
Usage: docker update [OPTIONS] CONTAINER [CONTAINER...]
|
2015-12-28 06:19:26 -05:00
|
|
|
|
2016-07-07 14:43:18 -04:00
|
|
|
Update configuration of one or more containers
|
2015-12-28 06:19:26 -05:00
|
|
|
|
cli: use custom annotation for aliases
Cobra allows for aliases to be defined for a command, but only allows these
to be defined at the same level (for example, `docker image ls` as alias for
`docker image list`). Our CLI has some commands that are available both as a
top-level shorthand as well as `docker <object> <verb>` subcommands. For example,
`docker ps` is a shorthand for `docker container ps` / `docker container ls`.
This patch introduces a custom "aliases" annotation that can be used to print
all available aliases for a command. While this requires these aliases to be
defined manually, in practice the list of aliases rarely changes, so maintenance
should be minimal.
As a convention, we could consider the first command in this list to be the
canonical command, so that we can use this information to add redirects in
our documentation in future.
Before this patch:
docker images --help
Usage: docker images [OPTIONS] [REPOSITORY[:TAG]]
List images
Options:
-a, --all Show all images (default hides intermediate images)
...
With this patch:
docker images --help
Usage: docker images [OPTIONS] [REPOSITORY[:TAG]]
List images
Aliases:
docker image ls, docker image list, docker images
Options:
-a, --all Show all images (default hides intermediate images)
...
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-28 04:52:25 -04:00
|
|
|
Aliases:
|
|
|
|
docker container update, docker update
|
|
|
|
|
2016-07-07 14:43:18 -04:00
|
|
|
Options:
|
2017-02-18 01:04:37 -05:00
|
|
|
--blkio-weight uint16 Block IO (relative weight), between 10 and 1000, or 0 to disable (default 0)
|
2016-07-07 14:43:18 -04:00
|
|
|
--cpu-period int Limit CPU CFS (Completely Fair Scheduler) period
|
|
|
|
--cpu-quota int Limit CPU CFS (Completely Fair Scheduler) quota
|
2016-06-07 15:05:43 -04:00
|
|
|
--cpu-rt-period int Limit the CPU real-time period in microseconds
|
|
|
|
--cpu-rt-runtime int Limit the CPU real-time runtime in microseconds
|
2017-02-18 01:04:37 -05:00
|
|
|
-c, --cpu-shares int CPU shares (relative weight)
|
|
|
|
--cpus decimal Number of CPUs (default 0.000)
|
2016-07-07 14:43:18 -04:00
|
|
|
--cpuset-cpus string CPUs in which to allow execution (0-3, 0,1)
|
|
|
|
--cpuset-mems string MEMs in which to allow execution (0-3, 0,1)
|
|
|
|
--help Print usage
|
|
|
|
--kernel-memory string Kernel memory limit
|
|
|
|
-m, --memory string Memory limit
|
|
|
|
--memory-reservation string Memory soft limit
|
|
|
|
--memory-swap string Swap limit equal to memory plus swap: '-1' to enable unlimited swap
|
2017-06-12 02:22:11 -04:00
|
|
|
--pids-limit int Tune container pids limit (set -1 for unlimited)
|
2016-07-07 14:43:18 -04:00
|
|
|
--restart string Restart policy to apply when a container exits
|
|
|
|
```
|
2015-12-28 06:19:26 -05:00
|
|
|
|
2017-02-07 18:42:48 -05:00
|
|
|
## Description
|
|
|
|
|
2016-01-04 10:58:20 -05:00
|
|
|
The `docker update` command dynamically updates container configuration.
|
2016-10-14 18:30:36 -04:00
|
|
|
You can use this command to prevent containers from consuming too many
|
|
|
|
resources from their Docker host. With a single command, you can place
|
2016-07-12 08:29:02 -04:00
|
|
|
limits on a single container or on many. To specify more than one container,
|
|
|
|
provide space-separated list of container names or IDs.
|
2015-12-28 06:19:26 -05:00
|
|
|
|
2016-07-12 08:29:02 -04:00
|
|
|
With the exception of the `--kernel-memory` option, you can specify these
|
2016-07-26 21:03:15 -04:00
|
|
|
options on a running or a stopped container. On kernel version older than
|
|
|
|
4.6, you can only update `--kernel-memory` on a stopped container or on
|
|
|
|
a running container with kernel memory initialized.
|
2016-01-04 10:58:20 -05:00
|
|
|
|
2020-04-19 09:43:08 -04:00
|
|
|
> **Warning**
|
|
|
|
>
|
|
|
|
> The `docker update` and `docker container update` commands are not supported
|
|
|
|
> for Windows containers.
|
2017-08-17 18:37:48 -04:00
|
|
|
{: .warning }
|
|
|
|
|
2016-09-17 23:00:19 -04:00
|
|
|
## Examples
|
2015-12-28 06:19:26 -05:00
|
|
|
|
|
|
|
The following sections illustrate ways to use this command.
|
|
|
|
|
2022-03-30 09:05:29 -04:00
|
|
|
### <a name=cpu-shares></a> Update a container's cpu-shares (--cpu-shares)
|
2015-12-28 06:19:26 -05:00
|
|
|
|
|
|
|
To limit a container's cpu-shares to 512, first identify the container
|
2016-07-12 08:29:02 -04:00
|
|
|
name or ID. You can use `docker ps` to find these values. You can also
|
|
|
|
use the ID returned from the `docker run` command. Then, do the following:
|
2015-12-28 06:19:26 -05:00
|
|
|
|
2021-08-21 08:54:14 -04:00
|
|
|
```console
|
2015-12-28 06:19:26 -05:00
|
|
|
$ docker update --cpu-shares 512 abebf7571666
|
|
|
|
```
|
|
|
|
|
2022-03-30 09:05:29 -04:00
|
|
|
### <a name=memory></a> Update a container with cpu-shares and memory (-m, --memory)
|
2015-12-28 06:19:26 -05:00
|
|
|
|
|
|
|
To update multiple resource configurations for multiple containers:
|
|
|
|
|
2021-08-21 08:54:14 -04:00
|
|
|
```console
|
2015-12-28 06:19:26 -05:00
|
|
|
$ docker update --cpu-shares 512 -m 300M abebf7571666 hopeful_morse
|
|
|
|
```
|
2016-01-04 10:58:20 -05:00
|
|
|
|
2022-03-30 09:05:29 -04:00
|
|
|
### <a name=kernel-memory></a> Update a container's kernel memory constraints (--kernel-memory)
|
2016-07-12 08:29:02 -04:00
|
|
|
|
|
|
|
You can update a container's kernel memory limit using the `--kernel-memory`
|
2016-07-26 21:03:15 -04:00
|
|
|
option. On kernel version older than 4.6, this option can be updated on a
|
|
|
|
running container only if the container was started with `--kernel-memory`.
|
|
|
|
If the container was started *without* `--kernel-memory` you need to stop
|
|
|
|
the container before updating kernel memory.
|
2016-07-12 08:29:02 -04:00
|
|
|
|
2020-07-24 07:49:00 -04:00
|
|
|
> **Note**
|
|
|
|
>
|
2020-10-13 03:39:42 -04:00
|
|
|
> The `--kernel-memory` option has been deprecated since Docker 20.10.
|
2020-07-24 07:49:00 -04:00
|
|
|
|
2016-07-12 08:29:02 -04:00
|
|
|
For example, if you started a container with this command:
|
|
|
|
|
2021-08-21 08:54:14 -04:00
|
|
|
```console
|
2016-07-12 08:29:02 -04:00
|
|
|
$ docker run -dit --name test --kernel-memory 50M ubuntu bash
|
|
|
|
```
|
|
|
|
|
|
|
|
You can update kernel memory while the container is running:
|
|
|
|
|
2021-08-21 08:54:14 -04:00
|
|
|
```console
|
2016-07-12 08:29:02 -04:00
|
|
|
$ docker update --kernel-memory 80M test
|
|
|
|
```
|
|
|
|
|
|
|
|
If you started a container *without* kernel memory initialized:
|
|
|
|
|
2021-08-21 08:54:14 -04:00
|
|
|
```console
|
2016-07-12 08:29:02 -04:00
|
|
|
$ docker run -dit --name test2 --memory 300M ubuntu bash
|
|
|
|
```
|
|
|
|
|
|
|
|
Update kernel memory of running container `test2` will fail. You need to stop
|
|
|
|
the container before updating the `--kernel-memory` setting. The next time you
|
|
|
|
start it, the container uses the new value.
|
|
|
|
|
2016-07-26 21:03:15 -04:00
|
|
|
Kernel version newer than (include) 4.6 does not have this limitation, you
|
|
|
|
can use `--kernel-memory` the same way as other options.
|
2016-07-12 08:29:02 -04:00
|
|
|
|
2022-03-30 09:05:29 -04:00
|
|
|
### <a name=restart></a> Update a container's restart policy (--restart)
|
2016-01-04 10:58:20 -05:00
|
|
|
|
2016-07-12 08:29:02 -04:00
|
|
|
You can change a container's restart policy on a running container. The new
|
|
|
|
restart policy takes effect instantly after you run `docker update` on a
|
|
|
|
container.
|
|
|
|
|
2016-01-04 10:58:20 -05:00
|
|
|
To update restart policy for one or more containers:
|
2016-07-12 08:29:02 -04:00
|
|
|
|
2021-08-21 08:54:14 -04:00
|
|
|
```console
|
2016-01-04 10:58:20 -05:00
|
|
|
$ docker update --restart=on-failure:3 abebf7571666 hopeful_morse
|
|
|
|
```
|
2016-08-15 04:38:47 -04:00
|
|
|
|
|
|
|
Note that if the container is started with "--rm" flag, you cannot update the restart
|
|
|
|
policy for it. The `AutoRemove` and `RestartPolicy` are mutually exclusive for the
|
|
|
|
container.
|