将项目jar包注册为服务 或者使用war,将tomcat部署为服务

windows平台

使用winsw

winsw是一个开源项目,程序以及源码可以在Git Hub中下载:https://github.com/kohsuke/winsw/releases

winsw是一个可以将任何应用程序注册成服务的软件

使用方法:

1、下载exe文件,重新命名winsw.exe(自定义)

2、同目录下创建一个与.exe文件同名的xml文件,如winsw.xml

其中参数自己看一下就可以了

<service>
      <id>projectNameid>
      <name>projectNamename>
      <description>To start my app as a service.description>
      <env name="MYSERVICE_HOME" value="%BASE%"/>
      <executable>javaexecutable>
      <arguments>-Xmx256m -jar "%BASE%\App.jar"  --server.port=80  --spring.profiles.active=prodarguments>
      <logmode>rotatelogmode>
service>

3、使用cmd,用cd命令转到winsw.exe所在文件夹,然后执行命令

安装服务命令:./MyApp.exe install

卸载服务命令:MyApp.exe uninstall

4、打开系统服务功能:运行——输入services.msc,即可看见自己命名的服务myApp

5、设置服务为自动,并启用即可

ubuntu平台

1.创建一个服务

sudo vim /etc/systemd/system/my-webapp.service

复制/粘贴以下内容到文件 /etc/systemd/system/my-webapp.service 中:

[Unit]
Description=My Webapp Java REST Service
[Service]
User=ubuntu
#The configuration file application.properties should be here:
#修改为你的工作目录
WorkingDirectory=/home/ubuntu/workspace
#要执行程序的路径,调用jar文件的shell执行文件
fileExecStart=/home/ubuntu/workspace/my-webapp
SuccessExitStatus=143
TimeoutStopSec=10
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target

2.创建调用服务的Bash脚本
下面是调用JAR文件 my-webapp 的bash脚本:
/bin/sh

sudo /usr/bin/java -jar my-webapp-1.0-SNAPSHOT.jar server config.yml

不要忘记给脚本授予可执行权限:

sudo chmod u+x my-webapp

3.启动服务

sudo systemctl daemon-reload

sudo systemctl enable my-webapp.service

sudo systemctl start my-webapp

sudo systemctl status my-webapp

4.设置日志记录

服务设置好之后,我们还需要记录一下日志信息,以供有问题的时候查阅。这里我们使用Linux的新日志系统Journald。

简单介绍下Journald,它是Linux的新日志系统。Journald和systemd绑定。 Journald使用journalctl工具读取日志,默认参数下显示所有日志内容。journalctl不是本文的重点,感兴趣的读者可以自行查阅资料去了解。

我们简单介绍两个参数,使用 -f 选项可以查看实时日志,使用 -n 可以指定日志行数,使用 -u 指定特定单元(同–unit)。

首先执行该命令,

sudo journalctl –unit=my-webapp

如果想查看实时日志的话,可以执行:

sudo journalctl -f -n 1000 -u spinal-webapp

停止服务:

sudo systemctl stop my-webapp

war tomcat

配置好基本环境
cd tomcat/bin
service.bat install

你可能感兴趣的:(学习笔记,心得)