【问题标题】:Docker fails on changed GCP virtual machine?Docker 在更改的 GCP 虚拟机上失败?
【发布时间】:2018-03-31 05:17:44
【问题描述】:

我在更改 Google Compute Platform VM 实例的机器类型时似乎出现了 Docker 问题。正常的图像无法运行、无法删除和无法拉取,所有这些都带有关于丢失键(在 Linux 上)、重复或丢失层以及其他我不记得的各种模糊消息。

错误并不总是发生。刚才发生的一个问题,昨天在相同的设置上运行了几百次的图像,但在重新启动之前,是:

$ docker run --rm -it mbloore/model:conda4.3.1-aq0.1.9
docker: Error response from daemon: layer does not exist.
$ docker pull mbloore/model:conda4.3.1-aq0.1.9
conda4.3.1-aq0.1.9: Pulling from mbloore/model
Digest: sha256:4d203b18fd57f9d867086cc0c97476750b42a86f32d8a9f55976afa59e699b28
Status: Image is up to date for mbloore/model:conda4.3.1-aq0.1.9
$ docker rmi mbloore/model:conda4.3.1-aq0.1.9
Error response from daemon: unrecognized image ID sha256:8315bb7add4fea22d760097bc377dbc6d9f5572bd71e98911e8080924724554e
$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
$

所以它认为它没有图像,但 Docker 文件夹中充满了文件,它确实知道一些哈希值。看起来某些索引已损坏。 我重新启动了那个实例,然后 Docker 似乎又恢复了正常,我没有任何特殊操作。

到目前为止,我发现的唯一解决方法是重新启动并希望,或者删除几个大型 Docker 目录,然后将它们重新创建为空。然后在重新启动并拉动并运行后再次工作。但我现在不确定它是否会一直如此。

我在 Debian 9 上使用 Docker 版本 17.05.0-ce 运行。我的映像是在 Amazon Linux 上使用 Docker 版本 17.03.2-ce 构建的,并且基于官方 Ubuntu 映像。

有没有人遇到过这种问题,或者知道如何在不删除几乎所有内容的情况下重置 Docker 的状态?

【问题讨论】:

  • 您好,您使用的是哪个操作系统和Docker版本?你能重现这个问题吗?可以提供步骤吗?

标签: docker google-cloud-platform google-compute-engine


【解决方案1】:

两点:

1) 似乎更改虚拟机与它无关。在某些引导上 Docker 可以工作,而在其他引导上则不行,配置或内容没有变化。

2) 在 Google 的建议下,我安装了 Stackdriver 监控和日志记录代理,到目前为止,我通过七次重启都没有遇到问题。

我的第一个猜测是启动时存在竞争条件,添加这些代理会改变它对我有利。当然,我想要一个真正的解决方案,但现在我没有时间去解决这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-01
    • 2021-06-15
    • 1970-01-01
    • 2018-02-13
    • 2020-06-21
    • 1970-01-01
    • 1970-01-01
    • 2018-04-05
    相关资源
    最近更新 更多