You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

启动DDEV Laravel时遇错误:Web/DB容器就绪等待失败(ZFS)

排查ddev启动时web容器不健康问题

当执行ddev start出现Failed waiting for web/db containers to become ready: web container failed错误,且ddev-website-web容器始终不健康时,按以下步骤排查:

1. 查看容器日志定位根因

直接查看web容器的启动日志,这是最关键的一步:

ddev logs web
# 或用docker命令查看更详细日志
docker logs ddev-website-web

日志里会明确显示容器启动失败的具体原因,比如依赖安装失败、配置文件语法错误、服务启动超时等。

2. 检查端口占用

web容器默认使用80/443端口,若被本地其他服务(如Nginx、Apache、微信开发者工具等)占用,会导致容器无法正常启动:

  • 先停掉所有ddev服务:ddev poweroff
  • 检查端口占用:
    • Linux/macOS:lsof -i :80 或 sudo netstat -tulpn | grep :80
    • Windows:netstat -ano | findstr ":80"
  • 找到占用进程后杀掉,或者修改.ddev/config.yaml中的http_port和https_port字段更换端口。

3. 重置容器与镜像缓存

镜像损坏或缓存冲突也会导致容器启动异常:

# 停掉所有ddev服务
ddev poweroff
# 删除问题容器
docker rm -f ddev-website-web ddev-website-db
# 强制重建容器并重新拉取镜像
ddev start --rebuild

4. 检查项目ddev配置

确认项目根目录下的.ddev配置是否正确:

  • 查看config.yaml,确保webimage版本与团队要求一致,没有错误的自定义配置
  • 检查是否存在docker-compose.*.yaml自定义配置文件,这些文件可能覆盖默认容器配置导致启动失败
  • 排查.ddev/web-build/或.ddev/commands/web/下的自定义脚本,脚本执行失败会直接导致容器不健康

5. 验证项目依赖是否完整

克隆仓库后,部分项目需要手动安装依赖:

# 进入容器执行依赖安装命令(以PHP项目为例)
ddev exec composer install
# Node项目则执行
ddev exec npm install

如果依赖安装过程中出现网络错误、版本冲突等问题,需要先解决这些问题再重启ddev。

6. 核对ddev版本兼容性

不同版本的ddev镜像配置存在差异,确保本地ddev版本与团队一致:

ddev --version

若版本不一致,升级或降级到团队指定的ddev版本后再尝试启动。

内容的提问来源于stack exchange,提问作者sneaky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 23:08:21