Nacos注册为windows服务详解

2023-12-28 11:52:35

将 Nacos 注册成 Windows 服务运行

众所周知,在 Windows 环境下想要启动 nacos 需要运行 bin 目录下的 startup.cmd。这样的启动方式需要保证 cmd 窗口一直开着,只要把这个窗口关掉,nacos 服务就停了。

所以为了避免人为的误关窗口,把 nacos 注册成一个 winserver 就是一个好的选择。这样不仅可以保证nacos一直在后台运行,还可以通过注册的服务名自定义开机自启动等。

下载 Windows Service Wrapper 工具

这个下载可能很慢,已上传压缩包,见顶部

下载地址

https://github.com/winsw/winsw/releases

我下载的时候,最新可用版本是 v2.11.0 。

根据操作系统的位数不同,下载不同的 exe 文件,我这里下载的是64位的执行文件

下载 exe 文件后

  • 将WinSW-x64.exe文件重命名为?nacos-service.exe,放在 nacos 的 bin 目录下
  • 创建配置文件 nacos-service.xml

nacos-service.xml 文件的内容如下:?

<service>
  <!-- 唯一服务ID -->
  <id>nacos</id>
  <!-- 显示服务的名称 -->
  <name>Nacos Service</name>
  <!-- 服务描述 -->
  <description>Nacos服务</description>
  <!-- 日志路径 -->
  <logpath>你的nacos路径\nacos\bin\logs\</logpath>
  <!-- 日志模式 -->
  <logmode>roll</logmode>
  <!-- 可执行文件的命令 -->
  <executable>你的nacos路径\nacos\bin\startup.cmd</executable>
  <!-- 停止可执行文件的命令 -->
  <stopexecutable>你的nacos路径\nacos\bin\shutdown.cmd</stopexecutable>
</service>?

在 "你的nacos路径\nacos\bin" 下,运行以下命令,将 nacos 注册成 Windows 服务

nacos-service.exe install

查看nacos服务

如果需要写在,进入到 nacos 的 bin 目录下,执行以下命令:

nacos-service.exe uninstall

按组合键 Win + X,选择 Windows PowerShell(管理员)

输入如下命令启动 nacos 服务:

net start nacos

停止 nacos 服务:

net stop nacos

注:将 java jar 包注册成 Windows 服务同理,把 WinSW 文件复制到和 jar 包同一层级下,然后修改 jar 包名称。

之后再新建一个 xml 配置文件,文件和 nacos 的大同小异,内容如下:

<service>
  <!-- 指定在Windows系统内部使用的识别服务的ID。在系统中安装的所有服务中,这必须是唯一的,它应该完全由字母数字字符组成 -->
  <id>server-id</id>
  <!-- 服务的简短名称,它可以包含空格和其他字符。尽量简短,就像“id”一样,在系统的所有服务名称中,也要保持唯一 -->
  <name>server-name</name>
  <!-- 该服务可读描述。当选中该服务时,它将显示在Windows服务管理器中 -->
  <description>This runs Spring Boot as a Service.</description>
  <!-- 该元素指定要启动的可执行文件 -->
  <env name="HOME" value="%BASE%"/>
  <executable>java</executable>
  <arguments>-Xmx256m -Dfile.encoding=UTF-8 -jar "%BASE%\你的jar包名称.jar"</arguments>
  <!-- 日志输出位置 -->
  <logpath>%BASE%\logs</logpath>
    <log mode="roll-by-size">
        <sizeThreshold>10240</sizeThreshold>
        <keepFiles>8</keepFiles>
    </log>
</service>

文章来源:https://blog.csdn.net/weixin_40141628/article/details/135261293
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。