我在具有 1 个主节点和 3 个工作节点的 docker swarm 集群上启动了一个烧瓶 API 服务。我已经使用以下 docker compose 文件部署了任务,
version: '3'
services:
xgboost-model-api:
image: xgboost-model-api
ports:
- "5000:5000"
deploy:
mode: global
networks:
- xgboost-net
networks:
xgboost-net:
我使用以下 docker swarm 命令部署了任务,
docker stack deploy --compose-file docker-compose.yml xgboost-swarm
但是,该任务仅在我的主节点上启动,而不是在任何工作节点上启动。
$ docker service ls
ID NAME MODE REPLICAS IMAGE
pgd8cktr4foz viz replicated 1/1
dockersamples/visualizer
twrpr4av4c7f xgboost-swarm_xgboost-model-api global 1/4 xgboost-model-api
xxrfn1w7eqw6 dockercloud-server-proxy global 1/1 dockercloud/server-proxy
正在使用的 Dockerfile 在这里。任何关于为什么会发生这种行为的想法都将不胜感激。