.NET Core 3.1 跨平台开发-WorkerService

问题描述 投票:0回答:1

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

我的第一个打算是为每个平台编写安装、卸载和更新脚本。我在 Windows 上使用 PowerShell 进行了概念验证,发现执行关闭文件更新服务的脚本不起作用。

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

对于 MacO,我没有找到任何有关安装为服务的信息。它本身的服务只是某种简单的反向代理,需要网络访问。第二个想法可能是使用 cron 作业进行更新。

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

.net-core deployment service cross-platform
1个回答
0
投票

我通过在每个平台上使用脚本来安装和卸载来管理解决方案。通过每个操作系统的更新脚本,它可以关闭服务、替换文件并再次启动。下载新版本的 zip 文件后,该服务会自行触发更新脚本。

© www.soinside.com 2019 - 2024. All rights reserved.