无法连接到docker swarm服务任务
我正在关注Docker Swarm上的一系列博客文章,并试图在(服务发现和负载平衡)工作的最后一部分中给出一个示例。我们的想法是启动3个名为无法连接到docker swarm服务任务,docker,docker-swarm,Docker,Docker Swarm,我正在关注Docker Swarm上的一系列博客文章,并试图在(服务发现和负载平衡)工作的最后一部分中给出一个示例。我们的想法是启动3个名为bar的“whoami”服务实例,该服务只报告主机名和1个名为foo的Nginx服务实例,从中执行/bin/bash并通过curl向bar发出请求。但是,我的服务在启动后立即退出,不允许我对它们执行任何命令 给定一个现有Docker Swarm设置,其中有一个管理器和两个工人,在管理器节点上: # docker service create --name f
bar
的“whoami”服务实例,该服务只报告主机名和1个名为foo
的Nginx服务实例,从中执行/bin/bash
并通过curl向bar
发出请求。但是,我的服务在启动后立即退出,不允许我对它们执行任何命令
给定一个现有Docker Swarm设置,其中有一个管理器和两个工人,在管理器节点上:
# docker service create --name foo --replicas 1 --network test nginx
194bw6mbgwyhmyl82zcxbyzat
# docker service create --name bar --replicas 3 --network test --publish 8000:8000 jwilder/whoami
alhz41p6usu7pbyesiiqh2hrd
# docker service ls
ID NAME REPLICAS IMAGE COMMAND
194bw6mbgwyh foo 0/1 nginx
alhz41p6usu7 bar 0/3 jwilder/whoami
# docker service ps foo
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR
5vlgohetx4l95hm2mcggd4r6a foo.1 nginx docker-swarm-1 Running Running 5 seconds ago
# docker service ps bar
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR
f1w9dxlaqgjlscwkf6ocdrui9 bar.1 jwilder/whoami docker-swarm-2 Running Running 23 seconds ago
7xg7p0rc8oerp0p6nvnm3l73i bar.2 jwilder/whoami docker-swarm-2 Running Running 24 seconds ago
8m2ct4pcc8t263z1n4zmitn5y bar.3 jwilder/whoami docker-swarm-3 Running Running 25 seconds ago
因此:
# docker exec -it 5vlgohetx4l95hm2mcggd4r6a /bin/bash
Error response from daemon: No such container: 5vlgohetx4l95hm2mcggd4r6a
我做错了什么?命令
docker service ps
给出的id实际上不是一个容器id,而是一个任务id。要找到容器id,请运行docker inspect--format=“{{.Status.ContainerStatus.ContainerID}”
。或者,您可以在运行服务任务的节点上使用普通的docker ps
,并通过其名称找到正确的容器。标题可能会更新为“无法连接到docker swarm服务任务”或其他内容?