有时候我们需要将bat、exe等文件作为Windows的服务,我们可以使用bat、nssm等工具将此类文件设置为Windows服务,此处我们介绍使用WinSW这个工具。
1、下载
下载地址为:https://github.com/winsw/winsw/releases
文件地址:https://github.com/winsw/winsw/releases/download/v3.0.0-alpha.10/WinSW-x64.exe
2、配置
这里我们将minio.exe作为Windows服务为例子进行讲解
2.1、我们将下载下来的WinSW-x64.exe文件复制到Minio的安装目录并重命名(方便写命令,如minio-server.exe);
2.2、在Minio的安装目录中新建一个名称为minio-server的xml文件(必须要和WinSW-x64.exe重命名的minio-server名称一致),目的是WinSW会去读取和自己相同名称的xml文件中的配置进行相关设置,xml文件中的具体配置如下所示:
<service>
<!-- 服务ID名称(唯一) -->
<id>Minio-Server</id>
<!-- 服务显示名称 -->
<name>Minio-Server</name>
<!-- 服务的描述信息 -->
<description>Minio文件存储服务器</description>
<!-- 可设置环境变量 -->
<env name="HOME" value="%BASE%"/>
<!-- 要执行的可执行文件 -->
<executable>%BASE%\minio.exe</executable>
<!-- 可执行文件传递的参数 -->
<arguments>server "%BASE%\data"</arguments>
<!-- <logmode>rotate</logmode> -->
<logpath>%BASE%\logs</logpath>
<log mode="roll-by-size-time">
<sizeThreshold>10240</sizeThreshold>
<pattern>yyyyMMdd</pattern>
<autoRollAtTime>00:00:00</autoRollAtTime>
<zipOlderThanNumDays>5</zipOlderThanNumDays>
<zipDateFormat>yyyyMMdd</zipDateFormat>
</log>
</service>
3、执行安装
以管理员身份运行CMD并定位到Minio的安装目录,执行安装命令minio-server install,此时我们的Windows服务列表中就多了一个叫Minio-Server的服务了,如下图所示:
4、WinSW命令
命令 | 描述 |
---|---|
install | 安装服务 |
uninstall | 卸载服务 |
start | 启动服务 |
stop | 停止服务 |
restart | 重启服务 |
status | 检查服务状态 |
refresh | 刷新服务属性而不是重新安装 |
customize | -- |