2类标签
在 Go游戏服务器开发的一些思考(二十五):Redis的Docker Swarm部署中介绍过通过更改docker配置设置 engine.labels 标签。
实际上这样使用标签是不恰当的。
随着golang、docker版本的更变,发现 engine.labels 标签不能很好的工作了。
查了下资料,原来有2类标签:
- engine.labels
- node labels
node labels是给用户自定义使用的。
node labels
docker node update --label-add [标签] [节点名]
docker node update --label-rm [标签] [节点名]
docker node inspect [节点名]
详细可以参考官方文档:
https://docs.docker.com/engine/reference/commandline/node_update/#extended-description
https://docs.docker.com/engine/reference/commandline/node_ls/#filtering
docker swarm编排脚本
(略...)
deploy:
placement:
constraints: [node.labels.标签==值]
(略...)