未能启动,DDEV-ROUTER无法准备就绪,在上游重复



i先前在DDEV上有一个本地Drupal站点,然后以某种方式将代码删除了DDEV容器剩余的配置。

当我尝试重建本地网站时,我通过在.ddev/config.yaml中设置以下内容,将其设置为local.子域:

additional_hostnames:
- local.mysitename

在重新配置DDEV的过程中,我最终得到了两个DDEV容器,当我尝试启动容器时,我的名称相同,以下错误。

Failed to start mysitename: ddev-router failed to become ready: logOutput=2019/03/19 22:29:32 [emerg] 15415#15415: duplicate upstream "local.mysitename.ddev.local-80" in /etc/nginx/conf.d/default.conf:198
nginx: [emerg] duplicate upstream "local.mysitename.ddev.local-80" in /etc/nginx/conf.d/default.conf:198
nginx: configuration file /etc/nginx/nginx.conf test failed, err=container /ddev-router unhealthy: 2019/03/19 22:29:32 [emerg] 15415#15415: duplicate upstream "local.mysitename.ddev.local-80" in /etc/nginx/conf.d/default.conf:198
nginx: [emerg] duplicate upstream "local.mysitename.ddev.local-80" in /etc/nginx/conf.d/default.conf:198
nginx: configuration file /etc/nginx/nginx.conf test failed

从ddev中删除容器并重新配置似乎无济于事。

如何永久从DDEV中删除两个容器,或者如何至少解决上述错误?

不确定官方解决方案是什么,但我将其"修复"为:

  1. 删除了问题码头容器
    • 运行docker ps -a列出所有Docker容器
    • ran docker rm -f ID其中 ID是docker容器的ID:
      • ddev-mysitename-web
      • ddev-mysitename-dba
      • ddev-mysitename-db
  2. 重置Docker到工厂默认值
  3. 重新运行DDEV安装程序(注意我在Windows btw上)
  4. 在网站上运行ddev start

不是理想的,但是我上面做的是解决我的问题的原因。

注意:这将擦除所有本地站点的DDEV DB

使用ddev poweroff卸下DDEV-ROUTER容器,然后重新启动DDEV以重新创建对我工作的容器。

对我来说,我可以在检查所有添加的docker-compose-*。yaml文件后修复它。检查主机名,公开端口和环境很重要。由于它在后台使用traefik,因此必须将环境HTTP_EXPOSE设置为我公开的端口,否则将采用默认端口,在我的原因中,这将是80,主项目也将80用作同一端口。这就是为什么路由器会告诉我我上游有重复的原因。

还确保重新启动DDEV并检查卷。

相关内容

最新更新