docs/data/engine-cli/docker_node_update.yaml

104 lines
3.0 KiB
YAML

command: docker node update
short: Update a node
long: |-
Update metadata about a node, such as its availability, labels, or roles.
> [!NOTE]
> This is a cluster management command, and must be executed on a swarm
> manager node. To learn about managers and workers, refer to the
> [Swarm mode section](/engine/swarm/) in the
> documentation.
usage: docker node update [OPTIONS] NODE
pname: docker node
plink: docker_node.yaml
options:
- option: availability
value_type: string
description: Availability of the node (`active`, `pause`, `drain`)
deprecated: false
hidden: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: label-add
value_type: list
description: Add or update a node label (`key=value`)
details_url: '#label-add'
deprecated: false
hidden: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: label-rm
value_type: list
description: Remove a node label if exists
deprecated: false
hidden: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
- option: role
value_type: string
description: Role of the node (`worker`, `manager`)
deprecated: false
hidden: false
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
inherited_options:
- option: help
value_type: bool
default_value: "false"
description: Print usage
deprecated: false
hidden: true
experimental: false
experimentalcli: false
kubernetes: false
swarm: false
examples: |-
### Add label metadata to a node (--label-add) {#label-add}
Add metadata to a swarm node using node labels. You can specify a node label as
a key with an empty value:
``` bash
$ docker node update --label-add foo worker1
```
To add multiple labels to a node, pass the `--label-add` flag for each label:
```console
$ docker node update --label-add foo --label-add bar worker1
```
When you [create a service](/reference/cli/docker/service/create/),
you can use node labels as a constraint. A constraint limits the nodes where the
scheduler deploys tasks for a service.
For example, to add a `type` label to identify nodes where the scheduler should
deploy message queue service tasks:
``` bash
$ docker node update --label-add type=queue worker1
```
The labels you set for nodes using `docker node update` apply only to the node
entity within the swarm. Do not confuse them with the docker daemon labels for
[dockerd](/reference/cli/dockerd/).
For more information about labels, refer to [apply custom
metadata](/engine/userguide/labels-custom-metadata/).
deprecated: false
hidden: false
min_api_version: "1.24"
experimental: false
experimentalcli: false
kubernetes: false
swarm: true