Docker swarm会帮助我管理具有特定环境变量的容器吗?

时间:2017-07-05 10:08:47

标签: docker kubernetes microservices docker-swarm orchestration

基本上我需要能够使用特定的环境变量(帐户ID)启动容器。我需要运行多个这样的容器(每个容器具有不同的帐户ID)。

我需要能够启动其他容器,而无需停止现有容器。我还需要能够停止特定的容器。有点像动态docker-compose配置。

Docker是否可以帮助实现上述功能?是否还有其他工具(可能是Kubernetes?)?

否则,如果我使用docker-cli处理这个问题,我会使用docker run启动容器传递相关的环境变量,我需要确保该环境变量不存在容器并重新启动容器(如果存在)。

1 个答案:

答案 0 :(得分:0)

您可以为每个account ID创建新服务,并将该信息作为环境变量传递。这是一个例子:

docker service create --name service-for-account-123 --env accountId=123 imagename:latest 

要停止此服务的容器,您可以将其缩放为零,如下所示:

docker service scale service-for-account-123=0

要删除所有容器,您必须删除该服务:

docker service rm service-for-account-123