首页 > 解决方案 > docker swarm 服务陷入准备中

问题描述

我部署了一个 swarm 堆栈,我从堆栈中删除了几个服务并尝试再次部署它们。这些服务显示为期望状态删除和当前状态准备..它们的名称也从自定义服务名称更改为随机泊坞窗名称。swarm 也试图启动这些服务,这些服务也陷入了准备之中。我在所有节点上运行 docker system prune 并删除了堆栈。堆栈中的所有服务都不再存在,除了随机服务。现在我无法删除它们,它们仍处于准备状态。这些服务没有在群中的任何地方运行,但我想知道是否有办法删除它们。

标签: dockerdocker-swarm

解决方案


我有同样的问题。后来我发现当前状态“Preparing”表明 docker 正在尝试从 docker hub 拉取图像。但是在 ' 3.1docker service logs <serviceName> '以上的 docker-compose-version 中没有明确的指示。

但它有时会由于 n\w 带宽或其他 docker 内部原因而产生延迟。

希望能帮助到你!如果我找到更多相关信息,我会更新答案。

PS我发现docker stack deploy -c <your-compose-file> <appGroupName>将命令切换到时没有卡住docker-compose up。对我来说,由于某些原因,下载我的图像需要 20 多分钟。

因此,它证明了没有未解决的问题docker stack deploy

将 Christian 的参考资料添加到俱乐部并完成此答案。

使用 docker-machine ssh 连接到特定机器:

docker-machine ssh <nameOfNode/Machine>

你的提示会改变。你现在在另一台机器里面。在这另一台机器内执行以下操作:

tail -f /var/log/docker.log

您将看到该机器的“守护程序”日志。在那里,您将看到该特定守护进程是否正在执行“拉动”或作为服务准备的一部分正在执行的操作。就我而言,我发现了这样的事情:

time="2016-09-05T19:04:07.881790998Z" level=debug msg="pull progress map[progress:[===========================================>       ] 112.4 MB/130.2 MB status:Downloading

这让我意识到它只是从我的 docker 帐户下载一些图像。


推荐阅读