docker ps显示空列表 - 尽管docker tell container存在

问题描述 投票:1回答:4

当调用docker ps时,列表是空的,虽然我有一个id:(dcbb6aeaa06ba43fcb.....

我的步骤:

  • 第1步:我创建了一个运行js.file的图像(imagekommando):
  • 第2步:我根据我的图像创建了一个容器(在后台) docker run -d --name containerkommando imagekommando 我有个身份证! (容器ID 50)
  • 第3步:但docker ps显示空列表:

但是,当我重复步骤2时,我被告知,容器(containerkommando)已经存在:

docker run -d --name containerkommando imagekommando

你能帮助我,理解背后的逻辑吗?我怎样才能让容器运行(通过ID)?

docker docker-container
4个回答
1
投票

这意味着docker容器退出时出现错误,但需要清理。使用--rm选项,您可以告诉docker在容器退出时删除容器。

docker run --rm .....

另外要检查容器退出的原因......你可以使用

docker logs <container_id>

1
投票

这可能发生在什么地方:

  1. docker run ...创建并启动您的容器
  2. 你的容器退出
  3. docker ps没有列出已停止的容器(默认显示刚刚运行),所以它让你认为它不存在。
  4. docker run ...失败,因为您正在尝试创建并运行具有已存在名称的容器。

进一步阅读:


0
投票

docker ps仅显示活动容器(正在运行的容器)。

您的容器很可能在您启动后立即退出。您可以使用容器ID并执行docker logs <container-id>来检查容器失败的原因。

如果要查看已停止的容器以及正在运行的容器,可以执行docker ps -a以获取所有这些容器的列表。


0
投票

在Docker中,任务完成时会自动退出容器。您必须指定正确的入口点才能使Docker容器保持运行状态。

您可以使用命令docker ps -a检查已退出的容器。此退出的容器将阻止您再次使用该名称。

因此,您可能希望在创建新容器之前使用docker rm <container-name>。在测试环境中,您还可以使用docker system prune清除所有未使用的容器/网络。

© www.soinside.com 2019 - 2024. All rights reserved.