docker 在运行时立即退出,错误代码为 139

aru*_*414 6 docker docker-container asp.net-core-2.2

我有一个 web api 项目,当我通过 Visual Studio 运行时运行良好,也能够构建图像。但是当我使用命令运行时

docker run -d -t -p 8000:83 8fbf296e2173
Run Code Online (Sandbox Code Playgroud)

显示没有错误,容器将docker ps -a与状态一起列出

Exited (139) 1 second ago
Run Code Online (Sandbox Code Playgroud)

请帮忙解决这个问题

Sam*_*ley 20

开始使用 WSL 2 并遇到了同样的问题。这里发布的解决方法已经为我解决了问题: https://github.com/microsoft/WSL/issues/4694#issuecomment-

将以下内容添加到%userprofile%\.wslconfig中的 .wslconfig

[wsl2]
kernelCommandLine = vsyscall=emulate
Run Code Online (Sandbox Code Playgroud)


小智 11

供大家以后参考;Docker 退出代码139( 128 + 11) 意味着容器收到了SIGSEGV. 这可能是无效内存引用的结果。

参考:/sf/answers/2478769541/


wmo*_*ell 6

如果不了解正在运行的映像的更多信息,就不可能说出根本原因是什么。但是,Exited (139)基本上意味着发送了容器的 PID 1 SIGKILL。它可以是任何东西,段错误,内存不足,堆栈溢出等。

  • 使用在 `docker ps` 输出中找到的容器 ID 运行 `docker inspect [container ID]`。这将转储一个包含有关该容器的信息的大型 JSON 对象,可能包括有关导致终止的原因的更多信息。此外,`docker logs [container ID]`。 (3认同)