Vscode-docker: 将 vscode 更新到 v1.55 后,Docker 扩展不显示容器:vscode 错误连接 econnrefused 127.0.0.1:80

创建于 2021-04-01  ·  23评论  ·  资料来源: microsoft/vscode-docker

问题类型:错误

VS 代码版本:1.55
操作系统版本:Windows 10 专业版,版本 20H2

将 vscode 更新到 1.55 版(2021 年 3 月)后,Docker 扩展不再显示远程容器,而是显示以下错误:
vscode 错误连接 econnrefused 127.0.0.1:80
值得注意的是,容器是在vscode 1.54.3更新之前显示的。

失败的临时解决方案:通过禁用 update.mod 并将 vscode 降级到版本 1.54.3,容器再次出现在 remote-docker 扩展中。 但是,“附加 Visual Studio 代码”选项消失了(显然是由禁用自动更新引起的)。

external fix released

最有用的评论

@davari @majksner如果您将http.proxySupport设置设置为off ,问题是否会消失(之后可能需要重新启动 VSCode)?

image

我想这可能是这个问题起死回生了。

所有23条评论

有完全相同的问题。 我已经在这里报告了,可能是错误的地方。 微软/vscode-remote-release#4800

如果您在侧栏中启用“远程资源管理器”而不是使用 Docker,它将起作用。 那至少对我有用。

有完全相同的问题。 我已经在这里报告了,可能是错误的地方。 微软/vscode-remote-release#4800

如果您在侧栏中启用“远程资源管理器”而不是使用 Docker,它将起作用。 那至少对我有用。

谢谢尼古拉的解决方案。 它对我有用!
由于 docker 扩展的错误仍然存​​在,我暂时不关闭该问题。

@davari @majksner你能分享你所看到的截图吗?

Screenshot 2021-04-01 at 15 15 52
Screenshot 2021-04-01 at 15 16 47

你有 SSH Docker 主机吗?

我这样做了,我将 Docker 上下文与 SSH 连接一起使用。

好的。 您是否按照此处的 SSH 代理设置进行操作?

我做到了。 比本期的信息多一点。

我在这里粘贴我的原始问题:(microsoft/vscode-remote-release#4800)

更新到代码 1.55 后“远程 - 容器”扩展停止正常工作。 我无法再通过上下文连接到远程 Docker。 通过恢复到代码 1.54.3,我可以看到容器出现,但我没有“附加 Visual Studio 代码”选项,但是如果我将“远程 - 容器”扩展降级到 0.163.1(代码 1.54.3),我可以看到当我右键单击正在运行的容器时,再次“附加 Visual Studio 代码”。 恢复代码 1.55 中的扩展没有帮助。

扩展版本:0.166.0
VS Code 版本:代码 1.55.0 (c185983a683d14c396952dd432459097bc7f757f, 2021-03-30T16:07:58.402Z)
操作系统版本:达尔文 arm64 20.3.0

@bwateratmsft我的回答您的问题至今都完全同样@majksner

好吧,我想我已经复制了类似的东西。 我还没有弄清楚_why_,但出于某种原因,Dockerode 正在向 localhost 而不是 SSH 服务器发出请求。 我看到“404”是因为有一个 Web 服务器在本地运行在端口 80 上; @davari如果 80 上没有本地运行,那么您看到 ECONNREFUSED 是有道理的。

@davari @majksner如果您将http.proxySupport设置设置为off ,问题是否会消失(之后可能需要重新启动 VSCode)?

image

我想这可能是这个问题起死回生了。

cc @chrmarti因为这可能是由于更新到vscode-proxy-agent 0.9.0。

@bwateratmsft将 http.proxySupport 设置设置为关闭为我解决了这个问题。 谢谢! 但是为什么 Docker 扩展应该向本地主机而不是定义的 SSH 服务器发出请求?!

就是这样,它_不应该_进入本地主机。 似乎vscode-proxy-agent正在劫持docker-modem使用的代理并在不应该重定向请求时进行重定向。 这是 VSCode 1.55.0 中的回归。

在 OS X 版本上也有同样的问题——我可以确认"http.proxySupport": "off"对我来说也是一个修复。

@davari @majksner如果您将http.proxySupport设置设置为off ,问题是否会消失(之后可能需要重新启动 VSCode)?

感谢您的临时解决方案
自此更新以来,我遇到了与主题启动器完全相同的问题,但我正在使用 linux env DOCKER_HOST= ssh://...来访问我的远程 docker

在 OS X 版本上也有同样的问题——我可以确认"http.proxySupport": "off"对我来说也是一个修复。

同样的问题(OS X 10.13.6 和 Fedora 32,vscode 1.55)使用配置的 docker 上下文和 ssh url,但解决方法对我的情况没有帮助。 我收到“错误:请求超时”。
旁注:通过 shell CLI 调用(相同的 docker 上下文)对远程服务器的请求工作正常。

@fhaefemeier您是否设置了 SSH 代理?

另一个是灰尘。
使用 docker 上下文通过 ssh 在远程机器上的容器中工作。 docker ps在任何 shell 中都可以正常工作。
"http.proxySupport": "off"立即修复了它。

@fhaefemeier您是否设置了 SSH 代理?

在 OS X 上是的,它正在运行,但我的 ssh 密钥丢失了。 添加它后,扩展程序现在可以工作了。 谢谢你的提示。
在 linux 上,该扩展也可以正常工作。

@davari @majksner @markedwards @sartyukhov @max06 @fhaefemeier (哇,标签太多了!)

VSCode 1.55.1 现已发布,应该无需"http.proxySupport": "off"即可解决此问题。 我能够在快速 Canary 测试中成功连接。 其他人可以确认吗?

@bwateratmsft我可以确认更新到 VSCode 1.55.1 解决了这个问题。 谢谢你和团队!

此页面是否有帮助?
0 / 5 - 0 等级