在群集中按需创建docker容器

时间:2017-05-31 11:34:46

标签: docker docker-compose

我有一个码头群集群 我的docker hub中有一个预配置的docker镜像,我想按需运行图像的容器 我写了一个api,可以去主机并运行一个容器 但现在,我想在群集上启动该容器,而不是指向一个主机 我见过docker-compose和docker-stack 但根据文件 If there are existing containers for a service, and the service’s configuration or image was changed after the container’s creation, docker-compose up picks up the changes by stopping and recreating the containers (preserving mounted volumes).

那么,如何在群集上按需启动容器?

1 个答案:

答案 0 :(得分:0)

在Swarm中,您必须基于图像创建服务才能创建容器。有两种模式,全局在每台机器上启动此服务的1个容器,并且复制,swarm的负载均衡器将选择将托管容器的机器(当然你可以使用选项--constraint添加约束)。

docker service create --name=my_name --replicas=4 my_image

如果要按需启动容器,则必须将此服务扩展到所需的任务数(容器)。

docker service scale my_service=5

例如,您可以使用SDK获取服务的任务数量,并将其扩展为服务任务数+ 1。

根据我自己的经验,Swarm只适用于无状态组件(不知道如何处理数据库......)

我希望我没有理解这个问题。