linux – 停止在kestrel上运行的运行dotnet核心网站

部署新版本的现有.net核心网站时.我如何首先安全地停止旧的运行的茶隼应用程序?

以下是我想写的内容(伪部署脚本):

dotnet stop mysite/mysite.dll <---- this line here
mv mysite/ mysite.bak/
cp newly-published-mysite/ mysite/
dotnet run mysite/mysite.dll

killall dotnet似乎有点不安全.如果我在一个盒子上托管两个小网站,它会如何运作?

最佳答案
因此,到this discussion,现在没有安全的方法来阻止红隼.您需要通过dll和kill it的名称找到PID:

kill $(ps aux | grep 'MySite.dll' | awk '{print $2}')

在进程树的情况下,您需要手动grep所有子ID并为每个子ID调用kill.就像它完成了
Microsoft.Extensions.Internal.ProcessExtensions.KillTree方法(来自讨论的正确链接).

转载注明原文:linux – 停止在kestrel上运行的运行dotnet核心网站 - 代码日志