docker - docker-compose 是否支持 docker-compose.yml 中的放置约束
问题描述
在撰写文件的文档中 https://docs.docker.com/compose/compose-file/
我找到了constraints
作为在 swarm 中指定节点的方法的参考
deploy:
placement:
constraints:
- node.role == manager
- engine.labels.operatingsystem == ubuntu 14.04
但它不影响启动docker-compose up
这是我的 docker-compose.yml
version: '3'
services:
redis:
image: redis
deploy:
placement:
constraints:
- node.hostname==ryabchenko-system
这是我的蜂群
:~$ sudo docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION
9q4y21c0u15rqp0x10164xzm9 ryabchenko-system Ready Active 18.06.1-ce
se717p88485s22s715rdir9x2 * speechanalytics-test Ready Active Leader 18.09.3
speechanalytics-test
我跑
:~$ sudo docker-compose -p ra -f docker-compose.yml up
结果容器打开了speechanalytics-test
,但我希望它打开ryabchenko-system
解决方案
仅在 swarm 模式下支持放置约束。该docker-compose
命令仅适用于单个主机,因此不支持。docker stack deploy
如果您想使用该功能,您必须迁移您的 compose 文件以供 swarm 使用和使用。
推荐阅读
- java - 如何确保不在使用处理程序的主线程上执行网络调用?
- html - “您的数据目录和文件可能可以从 Internet 访问。.htaccess 文件不起作用。” - Nextcloud
- c# - 为我的 Unity 游戏制作一个 moddingAPI 并在没有直接引用的情况下调用函数
- c++ - 为什么我没有得到这些多边形的任何交集?
- python - 使用 python 和 pandas 将多数组 json 数据转换为扁平数据框
- python - 机器学习 Logistic 回归 L2 正则化
- gnome - Gnome shell 扩展登录回调
- java - 在 C++ 中无法使用 QAndroidJniObject JNI 从 java 上下文中检索 jlong 的值。异常 java.lang.NoSuchMethodError
- php - DOMDocument 移动
外面的标签
- svelte-3 - 在输入时停止页面滚动