Worker Server的部署
部署为Windows服务运行
1.在项目中添加nuget包:Microsoft.Extensions.Hosting.WindowsServices
2.然后在program.cs内部,将UseWindowsService()添加到CreateHostBuilder
3.发布想不到指定文件夹
4.然后使用sc.exe工具来管理服务,输入一下命令创建为windows服务
sc.exe create 服务名 binPath=文件地址
5.常用的sc命令
1、查看服务状态使用一下命令
sc.exe query 服务名
2、启动服务命令
sc.exe start 服务名
3、停用服务
sc.exe stop 服务名
4、删除服务
sc.exe delete 服务名
部署linux守护程序也是很方便的执行一下两个步骤即可:
-
添加Microsoft.Extensions.Hosting.Systemd NuGet包到项目中,并告诉你的新Worker,其生命周期由systemd管理!
-
将UseSystemd()添加到主机构建器中。
-
public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .UseSystemd() .ConfigureServices((hostContext, services) => { services.AddHostedService<Worker>(); });