Windows Service包装器在允许许可证中
winsw Wraps并管理任何应用程序作为Windows服务。
我们正在积极开发winsw 3。请参阅V2分支以获取以前的版本文档。
为什么?
请参阅项目清单。
支持的平台
winsw 3可以在Windows平台上使用.NET Framework 4.6.1或更高版本安装。对于没有.NET框架的系统,该项目基于.NET 7提供了本机64位和32位可执行文件。
可以根据要求添加更多可执行文件。
.NET框架系统要求
自Windows 10,版本1511和Windows Server 2016以来已预装。
由于Windows 7 SP1和Windows Server 2008 R2 SP1,因此可安装。
.NET 7系统要求
自Windows 10,版本1607,Windows Server(Core)2012 R2和Nano Server(版本1809)提供支持。
下载
GitHub版本上提供了最新版本和预发行winsw二进制文件。
替代来源:
- CI构建可在Azure管道上使用。
- nuget。 (2.x)
- 由Jenkins Project托管的可执行文件的Maven包装。二进制文件可在这里提供。 (2.x)
开始
使用winsw作为全球工具
- 从分销中以winsw .exe或winsw .zip为单位。
- 编写myApp.xml (有关更多详细信息,请参见XML配置文件规范和示例)。
- 运行
winsw install myapp.xml [options]以安装服务。 - 运行
winsw start myapp.xml以启动服务。 - 运行
winsw status myapp.xml以查看您的服务是否启动并运行。
使用winsw作为捆绑工具
- 以分销中的winsw .exe或winsw .zip为单位,然后将.exe重命名为您的口味(例如myapp.exe )。
- 编写myApp.xml (有关更多详细信息,请参见XML配置文件规范和示例)。
- 并排放置这两个文件,因为这是winsw发现其共同相关配置的方式。
- 运行
myapp.exe install [options]以安装服务。 - 运行
myapp.exe start启动服务。
示例配置文件
您编写定义服务的配置文件。下面的示例是詹金斯项目中使用的原始示例:
< service > < id >jenkins</ id > < name >Jenkins</ name > < description >This service runs Jenkins continuous integration system.</ description > < env name = \" JENKINS_HOME \" value = \" %BASE% \" /> < executable >java</ executable > < arguments >-Xrs -Xmx256m -jar \"%BASE%\\jenkins.war\" --httpPort=8080</ arguments > < log mode = \" roll \" ></ log > </ service >
配置文件的完整规范可在此处找到。您可以在这里找到更多样品。
用法
winsw由XML配置文件管理。
您重命名的winsw .EXE Binary还接受以下命令:
| 命令 | 描述 |
|---|---|
| 安装 | 安装服务。 |
| 卸载 | 卸载服务。 |
| 开始 | 开始服务。 |
| 停止 | 停止服务。 |
| 重新启动 | 停止,然后开始服务。 |
| 地位 | 检查服务的状态。 |
| 刷新 | 刷新服务属性而无需重新安装。 |
| 定制 | 自定义包装器可执行文件。 |
| 开发 | 实验命令。 |
实验命令:
| 命令 | 描述 |
|---|---|
| 开发PS | 绘制与服务关联的过程树。 |
| 开发杀死 | 如果服务已经停止响应,则终止该服务。 |
| 开发列表 | 列出由当前可执行文件管理的服务。 |
大多数命令要求管理员特权执行。 winsw将提示在非高级会议中进行UAC。
文档
- 迁移到winsw 3.x
- 配置:
- XML配置文件
- 记录和错误报告
- 扩展
- 用例:
- 自我激烈的服务
- 延期文件操作
贡献
欢迎捐款!有关更多信息,请参见贡献指南。
执照
winsw已获得MIT许可证的许可。
