如何在运行于WSL2中的Docker容器中附加到.NET控制台应用程序进程?

5
我有一个在 Docker 容器中运行的 C# .NET CORE 控制台应用程序,它在 WSL2 Ubuntu 20.04 中运行。
现在我想使用 Visual Studio(在 Windows 中)来调试运行在 Docker 容器中的 C# 控制台应用程序。
如何在 Visual Studio 中实现呢? 我尝试使用这里建议的方法,但是当我尝试连接到远程系统时失败了。

enter image description here

有人能指导我如何通过附加到在WSL2中托管的Docker容器中运行的进程来调试C#代码吗?

2个回答

0
  1. 确保您的容器正在运行。
  2. 选择调试 > 附加进程(确保“显示所有用户的进程”已选中) Attach to Process
    2.1 连接类型:Windows Subsystem for Linux (WSL)
    2.2 连接目标:您的发行版名称
    2.3 附加到:托管的(.NET Core for Unix)代码
  3. 导航到“dotnet”进程,您的应用程序应该在那里

0

现在,进程附加对话框支持连接到容器中的进程:https://learn.microsoft.com/en-us/visualstudio/debugger/attach-to-process-running-in-docker-container?view=vs-2022#attach-to-a-process-running-on-a-linux-docker-container 输入图像描述

此外,当容器通过本地 Docker Desktop 运行时,您可以从 VS 中的容器窗口启动“附加到进程”对话框:https://learn.microsoft.com/en-us/visualstudio/containers/view-and-diagnose-containers?view=vs-2022#attach-the-debugger-to-a-process enter image description here

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接