docker - Docker swarm-manager显示旧容器信息

标签 docker google-compute-engine docker-machine docker-swarm

我正在将docker-machine与Google Compute Engine(GCE)一起使用
运行一个
docker swarm集群。我用2成功创建了一个群体
节点
(swnd-01&swnd-02)在集群中。我创建了一个守护程序容器
像这样
在群管理器环境中:docker run -d ubuntu /bin/bashdocker ps显示在swnd-01上运行的容器。当我尝试
使用docker exec在容器上执行命令我得到了
错误,表示容器未运行,而docker ps显示其他错误。
我通过docker-machine ssh进入swnd-01以了解该容器
创建后就退出了。我在里面尝试了docker run命令
swnd-01,但仍然退出。我不了解这种行为。

如有任何建议,我们将不胜感激。

最佳答案

它退出的原因是/bin/bash命令完成,并且Docker容器仅在其主进程中运行(如果您使用-it标志运行此类容器,则在连接终端时该进程将继续运行)。

至于为什么群管理器认为容器仍在运行,我不确定。我想在Swarm更新所有状态时会有短暂的延迟。

关于docker - Docker swarm-manager显示旧容器信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31354013/

相关文章:

linux - Docker 容器无法公开端口以在 Mac 上托管

docker - 什么是 docker-machine 与 digitalocean 液滴的最佳替代品

git - 在 github 分支上构建的 Docker 找不到指定的文件

docker - 无法使用Dockerfile中的参数执行Shell脚本

docker-compose up 通过 Windows bat 文件?

ssl - 带非TLS后端的HTTPS负载平衡器和带TLS后端的HTTPS负载平衡器有什么区别

docker检查-将其输出格式化为表格

google-compute-engine - 为什么此 gcloud 计算副本文件会产生错误消息?

sockets - gcloud 计算 : configure firewall for external traffic

docker - 将 docker cli bash 命令转换为 api 以供外部应用程序在生产中使用的最安全方法