.Core 3.1 跨平台开发-Worker服务

.Core 3.1 Cross Plattform Development - WorkerService

我正在尝试找到将 Worker Service 部署到所有平台的最佳解决方案:我想 运行 我的 WokerService 在 Windows 作为服务,在 Linux 作为Systemd 服务和 MacOS..as?我的要求很简单:易于安装、自动启动、错误重启以及在所有平台上强制自动更新的方法。

我的第一个打算是为每个平台编写安装、卸载和更新脚本。我在 windows 上使用 PowerShell 启动了 POC,并注意到执行关闭文件更新服务的脚本不起作用。

在 Linux 上创建 systemd 服务比在 windows 上创建服务复杂得多。我需要一个配置文件,安全性不同于 windows。

对于 MacO,我没有发现任何有关作为服务安装的信息。它自身的服务只是某种简单的 ReverseProxy 并且需要网络访问。第二个想法可能是使用 cron 作业进行更新。

是否有任何现有的解决方案如何实现我的目标?想法?

好吧,我通过在每个平台上使用脚本来安装和卸载来管理解决方案。使用每个 OS 的更新脚本,它可以关闭服务、替换文件并重新启动。在将新版本下载为 zip 文件后,它自己触发更新脚本的服务。