我以前有一个本地drupal站点在ddev中工作,然后不知何故代码被删除,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中删除这两个容器,或者我如何至少解决上面的错误?
3条答案
按热度按时间uttx8gqw1#
不知道官方的解决方案是什么,但我得到了它“固定”:
docker ps -a
以列出所有Docker容器docker rm -f ID
,其中ID
是名为的docker容器的ID:ddev-mysitename-web
ddev-mysitename-dba
ddev-mysitename-db
ddev start
不理想,但我上面所做的就是解决我的问题。
注意:这将擦除所有本地站点的ddev DB
f3temu5u2#
用
ddev poweroff
删除ddev-router容器,然后重新启动DDEV来重新创建容器。wlzqhblo3#
对我来说,我可以在检查所有添加的
docker-compose-*.yaml
文件后修复它。检查主机名、暴露端口和环境非常重要。因为它在后台使用Traefik,所以必须将环境HTTP_EXPOSE
设置为我公开的端口,否则它将使用默认端口,在我的原因中将是80
,主项目也使用80
作为相同的端口。这就是为什么路由器会告诉我有一个重复的上游。另外,请确保重新启动
ddev
以及检查您的卷。