部署新版本的现有.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方法(来自讨论的正确链接).