运行中的Docker容器获取 .NET项目的Dump文件
进入容器的 shell
复制代码
docker exec -it 容器名称或 id /bin/bash
使用cd命令进入NETSDK所在文件夹
复制代码
cd /usr/share/dotnet/shared/Microsoft .NETCore.App
查看当前SDK版本
复制代码
ls

进入指定SDK版本的文件夹
复制代码
cd /usr/share/dotnet/shared/Microsoft.NETCore.App/6.0.33
使用SDK文件夹中的createdump程序创建dump文件
createdump程序说明:https://github.com/dotnet/coreclr/blob/master/Documentation/botr/xplat-minidump-generation.md#configurationpolicy
复制代码
./createdump 1 -u

默认会将文件创建到tmp文件夹,使用cd跳转并查看dump文件
复制代码
cd /tmp

复制dump文件到程序的wwwroot文件夹,其中app文件夹为构建镜像时创建的根目录
复制代码
cp /tmp/coredump.1 /app/wwwroot/
进入wwwroot文件夹
复制代码
cd /app/wwwroot/
重命名文件后缀为zip
复制代码
mv coredump.1 coredump.zip
使用域名和文件名称下载dump文件
下载完成后修改后缀为dmp就可以用WinDbg打开
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步