在 docker swarm 中将节点更改为管理器 - 我应该使用什么命令

Changing node to manager in docker swarm - what command should I use

我想将管理器添加到我的 docker 群环境中。
我可以 运行 update:
docker node update --role manager my_node_name
promote
docker node promote my_node_name

这两个命令有什么区别吗?

Docker 我在:

docker -v
Docker version 1.13.0, build 49bf474

如果节点是worker我认为这两个命令的结果是一样的。当您在脚本中使用此命令时,不同之处在于 IMO。

root@docker-1:~# docker node promote docker-1
Node 123123123123123 is already a manager.
root@docker-1:~# echo $?
0
root@docker-1:~# docker node update docker-1 --role manager
docker-1
root@docker-1:~#

这意味着输出(如果你愿意,你可以处理)是不同的。有趣的是,提升一个已经掌握的不是错误。

顺便说一句,你的问题标题不是你在描述中问的。将管理器节点添加到 swarm 就像使用

一样简单
docker swarm join --token ...

使用管理器令牌,您可以一步将管理器节点添加到集群中,而无需提升它。 (所以这是创建管理器节点的第三种方式)