使

使用WinSW安装Windows服务

HB 电脑 2023-01-02

配置Jenkins Windows节点时,需要手动执行命令启动服务,每次手动启动很麻烦,写成批处理文件放在C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp 目录下,可以开机启动,但是会显示一个命令号窗口,且不能关闭,因此需要使用将命令行程序配置成程序用于后台运行,winsw工具可以把命令行程序注册为服务方便运行。
下载
地址:https://github.com/winsw/winsw/releases
将下载的文件复制到需要安装服务的目录下,同时为了方便修改文件名为 winsw.exe
配置文件winsw.xml
此处注意:文件名和配置文件的名字除后缀之外,其他要相同,文件官网xml文件例子如下:

<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>
  <logmode>rotate</logmode>
</service>

相关内容修改如下,我这里是添加jenkins节点agent服务,为了不用每次都需要手动启动,且会有cmd窗口,配置服务如下

<service>
  <id>jenkins_agent</id>
  <name>jenkins_agent</name>
  <description>agent服务</description>
  <env name="JENKINS_HOME" value="%BASE%"/>
  <executable>java</executable>
  <arguments>-jar XXXXXXX"</arguments>
  <logmode>reset</logmode>
</service>

注册
编写好配置文件之后,记得把配置文件和可执行文件放在一起,这样winsw才能正确识别配置文件。然后我们使用管理员身份打开cmd窗口,cd进入到winsw所在目录中然后输入下面的命令,如果返回值为0,说明已将程序注册为服务。

winsw.exe install

查看
然后打开windows服务查看到已安装的服务
卸载
如果后续需要删除服务,同样在winsw所在目录中cmd,输入下面的命令进行删除卸载:

winsw.exe uninstall
PREV
如何彻底删除Docker
NEXT
N1盒子+移动硬盘部署armbian私人服务器

评论(0)

发布评论