Docker-Docs/_data/engine-cli/docker_update.yaml

238 lines
6.6 KiB
YAML

command: docker update
short: Update configuration of one or more containers
long: |-
The `docker update` command dynamically updates container configuration.
You can use this command to prevent containers from consuming too many
resources from their Docker host. With a single command, you can place
limits on a single container or on many. To specify more than one container,
provide space-separated list of container names or IDs.
With the exception of the `--kernel-memory` option, you can specify these
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.
> **Warning**
>
> The `docker update` and `docker container update` commands are not supported
> for Windows containers.
{: .warning }
usage: docker update [OPTIONS] CONTAINER [CONTAINER...]
pname: docker
plink: docker.yaml
options:
- option: blkio-weight
value_type: uint16
default_value: "0"
description: |
Block IO (relative weight), between 10 and 1000, or 0 to disable (default 0)
deprecated: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: cpu-period
value_type: int64
default_value: "0"
description: Limit CPU CFS (Completely Fair Scheduler) period
deprecated: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: cpu-quota
value_type: int64
default_value: "0"
description: Limit CPU CFS (Completely Fair Scheduler) quota
deprecated: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: cpu-rt-period
value_type: int64
default_value: "0"
description: Limit the CPU real-time period in microseconds
deprecated: false
min_api_version: "1.25"
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: cpu-rt-runtime
value_type: int64
default_value: "0"
description: Limit the CPU real-time runtime in microseconds
deprecated: false
min_api_version: "1.25"
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: cpu-shares
shorthand: c
value_type: int64
default_value: "0"
description: CPU shares (relative weight)
deprecated: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: cpus
value_type: decimal
description: Number of CPUs
deprecated: false
min_api_version: "1.29"
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: cpuset-cpus
value_type: string
description: CPUs in which to allow execution (0-3, 0,1)
deprecated: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: cpuset-mems
value_type: string
description: MEMs in which to allow execution (0-3, 0,1)
deprecated: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: kernel-memory
value_type: bytes
default_value: "0"
description: Kernel memory limit
deprecated: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: memory
shorthand: m
value_type: bytes
default_value: "0"
description: Memory limit
deprecated: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: memory-reservation
value_type: bytes
default_value: "0"
description: Memory soft limit
deprecated: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: memory-swap
value_type: bytes
default_value: "0"
description: |
Swap limit equal to memory plus swap: '-1' to enable unlimited swap
deprecated: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: pids-limit
value_type: int64
default_value: "0"
description: Tune container pids limit (set -1 for unlimited)
deprecated: false
min_api_version: "1.40"
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: restart
value_type: string
description: Restart policy to apply when a container exits
deprecated: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
examples: |-
The following sections illustrate ways to use this command.
### Update a container's cpu-shares
To limit a container's cpu-shares to 512, first identify the container
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:
```bash
$ docker update --cpu-shares 512 abebf7571666
```
### Update a container with cpu-shares and memory
To update multiple resource configurations for multiple containers:
```bash
$ docker update --cpu-shares 512 -m 300M abebf7571666 hopeful_morse
```
### Update a container's kernel memory constraints
You can update a container's kernel memory limit using the `--kernel-memory`
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.
For example, if you started a container with this command:
```bash
$ docker run -dit --name test --kernel-memory 50M ubuntu bash
```
You can update kernel memory while the container is running:
```bash
$ docker update --kernel-memory 80M test
```
If you started a container *without* kernel memory initialized:
```bash
$ 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.
Kernel version newer than (include) 4.6 does not have this limitation, you
can use `--kernel-memory` the same way as other options.
### Update a container's restart policy
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.
To update restart policy for one or more containers:
```bash
$ docker update --restart=on-failure:3 abebf7571666 hopeful_morse
```
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.
deprecated: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false