无法使用Rider调试使用docker容器和docker-compose构建的.net核心应用程序容器以代码139退出

问题描述

我无法使用Rider将调试器附加到我的Docker容器应用程序。它可以在Visual Studio(运行和调试)中正常运行,并且只能在使用Rider的情况下“运行”,但是当我尝试在Rider上“运行调试”时,该应用会尝试启动,但之后所有容器均退出显示代码139和出现以下错误

LTTng-UST: Error (-17) while registering tracepoint probe. Duplicate registration of tracepoint probes having the same name is not allowed.

docker exited containers

对于该问题,我找不到任何解决方案,docker日志也无济于事。您可以在下面找到配置。

示例Dockerfile:

FROM microsoft/dotnet:2.1.5-aspnetcore-runtime AS base
workdir /app
EXPOSE 80

FROM microsoft/dotnet:2.1-sdk AS build
workdir /src
copY My.App1/My.App1.csproj My.App1/
RUN dotnet restore My.App1/My.App1.csproj
copY . .
workdir /src/My.App1
RUN dotnet build My.App1.csproj -c Release -o /app

FROM build AS publish
RUN dotnet publish My.App1.csproj -c Release -o /app

FROM base AS final
workdir /app
copY --from=publish /app .
ENTRYPOINT ["dotnet","My.App1.dll"]

docker-compose.yml:

version: '3.4'

services:
  My.App3:
    image: registry.azurecr.io/myapp3
    build:
      context: .
      dockerfile: My.App3/Dockerfile
    depends_on:
      - My.App2
      - My.App5
      - My.App1
      - My.App6
      - My.app7

  My.App2:
    image: registry.azurecr.io/myapp2
    build:
      context: .
      dockerfile: My.App2/Dockerfile

  My.App5:
    image: registry.azurecr.io/myapp5
    build:
      context: .
      dockerfile: My.App5/Dockerfile
    depends_on:
      - My.App1
      - My.App6
      - My.app7
    
  My.App1:
    image: registry.azurecr.io/myapp1
    build:
      context: .
      dockerfile: My.App1/Dockerfile
    depends_on:
      - My.App2


  My.App6:
    image: registry.azurecr.io/myapp6
    build:
      context: .
      dockerfile: My.App6/Dockerfile
    depends_on:
      - My.App1

  My.app7:
    image: registry.azurecr.io/myapp7
    build:
      context: .
      dockerfile: My.app7/Dockerfile
    depends_on:
      - My.App1
      - My.App2

  My.App4:
    image: registry.azurecr.io/myapp4
    build:
      context: .
      dockerfile: My.App4/Dockerfile
    depends_on:
      - My.App1
      - My.App2

解决方法

您可以尝试将运行时版本更新为dotnet:2.1.22-aspnetcore-runtime