ddev 无法启动或重新启动 "docker Read timed out"

ddev failed to start or restart with a "docker Read timed out"

我在启动第二个 ddev 容器或重新启动 运行ning ddev 容器时遇到问题。然后我越来越频繁地运行进入下面的错误:

Failed to start project for custom command: Failed to run docker-compose [-f /Users/montea/tmp/tryddevproject-10532/.ddev/.ddev-docker-compose-full.yaml up --build -d], err='exit status 1', stdout='Docker Compose is now in the Docker CLI, try docker compose up

在撰写本文时,我拥有

的最新版本

运行 macOS Catalina 版本 10.15.7

我运行 this post

中所说的诊断脚本

Here is the gist for ddev 1.17.2

Here is the gist for ddev 1.17.1 (for reference)

如果我重新启动 Docker 它首先会起作用,但过一会儿问题又会出现。

有时 Docker 重启根本不起作用。然后,如果我再次执行 ddev poweroffddev start 可能会有所帮助。

也许这也是一个问题:我最旧的 ddev 项目是 1.8.0 我最新的是 1.17.2 …

Edit/Update:

在我的回答中尝试修复之后:

我太忙了,同时启动了两个ddev容器。收到此错误。

Failed to start project: failed to start ddev-router: Failed to run docker-compose [-f /Users/montea/.ddev/.router-compose-full.yaml -p ddev-router up -d], err='exit status 1', stdout='', stderr='Top level object in '/Users/montea/.ddev/.router-compose-full.yaml' needs to be an object not '<class 'NoneType'>'.'

但之后我再次启动容器,“崩溃”,一切正常。

唯一的问题是,每次我启动 mac 和启动 ddev 时,我 运行 都会出现此错误:

Failed to start project2: ddev-router failed to become ready; debug with 'docker logs ddev-router'; logOutput=container was previously healthy, so sleeping 59 seconds before continuing healthcheck... nginx config valid:OK ddev nginx config:generated nginx healthcheck endpoint:OK ddev-router is healthy with 3 upstreams, err=container /ddev-router unhealthy: container was previously healthy, so sleeping 59 seconds before continuing healthcheck... nginx config valid:OK ddev nginx config:generated nginx healthcheck endpoint:OK ddev-router is healthy with 3 upstreams

ddev poweroff和ddev再次启动后,就可以了。但是每天都会出现这个错误。

我认为这只是一个 Docker 问题。所以我遵循了这些步骤:

  • 重启(帮助临时)
  • 关闭防火墙(不可能,因为我的管理员不喜欢那样)
  • 备份所有 ddev 数据库
  • 清理/清除数据
  • 将 docker 重置为出厂默认设置

以上方法均无效,因此 Docker 想要“困难的方法”。所以我决定从我的 MAC.

remove/uninstall Docker
  • Docker 从应用程序中删除
  • com.docker.docker 从 Library/Containers
  • 中移除
  • com.docker.helper 从 Library/Application 脚本中删除
  • com.docker.docker 从 Library/Caches
  • 中移除
  • group.com.docker 从 Library/Group 个容器中移除
  • Docker 桌面已从 Library/Application 支持中移除

我发现安装了 brew docker,所以我也删除了它:

已下载 Docker.dmg 并安装。现在我希望这也能帮助 运行 解决这个问题的其他人。


经过一段时间的测试,我认为修复是一个包

  • 删除并重新安装 docker(如上)
  • 正在重新安装docker

和我做的每一个 eob

  • ddev 断电

没有问题了……