繁体   English   中英

Docker Swarm 接受容器作为工人

[英]Docker Swarm accepting containers as workers

我有一个运行 5 个 docker 容器的 vm。 主 vm 服务器是 swarm 的管理器。 我需要将五个容器添加到 swarm 中,以便对其进行管理。

感谢

Docker swarm 不直接管理容器。

首先,您创建一个服务或堆栈——它是服务的集合。

docker service create --name nginx nginx

服务是隐式复制的,并将被调度在 swarm 节点上。 每个复制实例称为一个任务。 您可以获得与服务关联的任务列表:

% docker service ps --no-trunc nginx
ID                          NAME      IMAGE                      NODE    DESIRED STATE   CURRENT STATE            ERROR     PORTS
mnhvyw9bz5nkup42scnkd0bnh   nginx.1   nginx:latest@sha256:....   node1   Running         Running 16 seconds ago  

任务具有所需的 state 和当前 state - 它们可以创建、运行、停止等。创建或运行的任务将与节点上的容器相关联,该容器将显示在 ps 列表中,以及容器名称将是任务名称和任务 ID。

% docker inspect mnhvy --format {{.Status.ContainerStatus.ContainerID}}
9cab5bb381b5ee5519f534393a8bd9014e4263c0afd6bb85f81a597728aa3f39

现在,您可以使用容器 id(通过检查任务发现)或容器名称(从 ps 列表附加名称和 id 以获取nginx.1.mnhvyw9bz5nkup42scnkd0bnh )访问与服务关联的容器之一

docker -H ssh://node1 exec -it 9cab5 /bin/sh 
# 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM