【发布时间】:2018-07-02 19:07:22
【问题描述】:
您好,我来自 PHP 世界,想玩玩 Dotnet Core。
我在 docker 中有工作应用程序。为了构建和运行应用程序,我使用 JetBrains Rider 准备了一些 运行配置,它运行我的 docker-compose 文件。
version: '3'
services:
dotnet:
build:
context: ./
dockerfile: Docker/Dockerfile
ports:
- "8080:80"
- "10777:22"
volumes:
- ./:/app
command: dotnet run -c Debug
environment:
- ASPNETCORE_ENVIRONMENT=Development
container_name: myapp_dotnet
现在我想调试应用程序,但到目前为止还没有找到任何方法。
到目前为止我发现的是:
- debugging using ssh server inside a docker - 在 Rider 中看不到选项通过 SSH 进行攻击
我在 JetBrains 跟踪器上发现了一个问题:https://youtrack.jetbrains.com/issue/RIDER-742,这是关于添加对 Docker 的调试器支持。但也许有人有一些解决方法来处理它?
PS。在 Docker 中开发应用程序是 Dotnet Core 世界中的一种良好/常见做法还是毫无意义?
【问题讨论】:
-
Visual Studio 支持远程调试,包括在 docker 容器中。但这是一项高级功能,我还没有看到它在其他任何地方实现,所以如果 Rider 或其他项目根本不支持它,我不会感到惊讶。相反,您应该使用 IDE 提供的功能在容器外部调试应用程序。当您对它感到满意时,将其打包成一个 docker 镜像,并将该镜像作为容器部署到您的 docker(集群)中。
-
感谢您的回复,这可能就是我要做的。不幸的是,Rider 的新版本(根据 Riders 的 YouTrack 应该具有该功能)不包括在容器中调试。
标签: docker debugging .net-core docker-compose