
Rather than conflict with the unexposed task model, change the names of
the object-oriented task display to `docker <object> ps`. The command
works identically to `docker service tasks`. This change is superficial.
This provides a more sensical docker experience while not trampling on
the task model that may be introduced as a top-level command at a later
date.
The following is an example of the display using `docker service ps`
with a service named `condescending_cori`:
```
$ docker service ps condescending_cori
ID NAME SERVICE IMAGE LAST STATE DESIRED STATE NODE
e2cd9vqb62qjk38lw65uoffd2 condescending_cori.1 condescending_cori alpine Running 13 minutes ago Running 6c6d232a5d0e
```
The following shows the output for the node on which the command is
running:
```console
$ docker node ps self
ID NAME SERVICE IMAGE LAST STATE DESIRED STATE NODE
b1tpbi43k1ibevg2e94bmqo0s mad_kalam.1 mad_kalam apline Accepted 2 seconds ago Accepted 6c6d232a5d0e
e2cd9vqb62qjk38lw65uoffd2 condescending_cori.1 condescending_cori alpine Running 12 minutes ago Running 6c6d232a5d0e
4x609m5o0qyn0kgpzvf0ad8x5 furious_davinci.1 furious_davinci redis Running 32 minutes ago Running 6c6d232a5d0e
```
Signed-off-by: Stephen J Day <stephen.day@docker.com>
(cherry picked from commit 0aa4e1e689
)
66 lines
1.9 KiB
Markdown
66 lines
1.9 KiB
Markdown
<!--[metadata]>
|
|
+++
|
|
title = "node update"
|
|
description = "The node update command description and usage"
|
|
keywords = ["resources, update, dynamically"]
|
|
[menu.main]
|
|
parent = "smn_cli"
|
|
+++
|
|
<![end-metadata]-->
|
|
|
|
**Warning:** this command is part of the Swarm management feature introduced in Docker 1.12, and might be subject to non backward-compatible changes.
|
|
|
|
## update
|
|
|
|
```markdown
|
|
Usage: docker node update [OPTIONS] NODE
|
|
|
|
Update a node
|
|
|
|
Options:
|
|
--availability string Availability of the node (active/pause/drain)
|
|
--help Print usage
|
|
--label-add value Add or update a node label (key=value) (default [])
|
|
--label-rm value Remove a node label if exists (default [])
|
|
--role string Role of the node (worker/manager)
|
|
```
|
|
|
|
### Add label metadata to a node
|
|
|
|
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:
|
|
|
|
``` bash
|
|
$ docker node update --label-add foo --label-add bar worker1
|
|
```
|
|
|
|
When you [create a service](service_create.md),
|
|
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]( ../../userguide/labels-custom-metadata.md#daemon-labels).
|
|
|
|
For more information about labels, refer to [apply custom
|
|
metadata](../../userguide/labels-custom-metadata.md).
|
|
|
|
## Related information
|
|
|
|
* [node inspect](node_inspect.md)
|
|
* [node ps](node_ps.md)
|
|
* [node ls](node_ls.md)
|
|
* [node rm](node_rm.md)
|