Docker - 守护进程的错误响应:没有这样的容器

1 min

language: ja bn en es hi pt ru zh-cn zh-tw

我发现 Docker 抛出了一个错误,所以记录一下。

Error response from daemon: no such container when running docker compose up · Issue #309 · docker/desktop-linux · GitHub

感觉像是最近的更新出了问题。

确认

就我而言,我将构建镜像等放在外部挂载的 HDD 上,但是当我使用 pacman -Syu 升级版本时,我发现 daemon.json 被覆盖并消失了。

{
    "data-root": "/mnt/hdd1/docker-data",
    "runtimes": {
        "nvidia": {
            "args": [],
            "path": "nvidia-container-runtime"
        }
    }
}

修复上述问题后,这次当我用 docker ps 检查时,容器仍然是 DEAD 状态,不知为何,出现了一个即使尝试删除也无法删除的容器,感觉只剩下元数据了?

解决

按照开头 Issue 帖子的指示,我暂时删除了整个 /mnt/hdd1/docker-data/containers
由于持久化数据在 volumes 中,所以我判断删除它没有问题。

sudo rc-service containerd stop
sudo rc-service docker stop

删除后,再次从 containerd 启动并再次构建容器,问题得到解决。

Related Posts