当前位置: 首页 > news >正文

SpringBoot项目部署在Windows与Centos上

文章目录

  • Windows部署
    • 一、github上下载文件winsw
    • 二、文件目录
    • 三、编辑xml文件
    • 四、安装服务
    • 五、启动服务
    • 六、把jar包放到项目外面
    • 七、添加限制内存
  • Linux部署
    • 一、准备
    • 二、服务
    • 三、操作

Windows部署

windows部署服务借鉴于此篇博文

一、github上下载文件winsw

点击链接下载下图中的两个文件 https://github.com/kohsuke/winsw/releases

在这里插入图片描述

二、文件目录

1、进入jar包所在目录
2、把第一步骤的两个文件移动到jar包所在的目录,jar包名随意,WinSW.NET4.exe和sample-minimal.xml进行重命名,建议设置成一致的。

三、编辑xml文件

<service><!-- ID of the service. It should be unique across the Windows system--><id>agent-vhost</id><!-- Display name of the service --><name>agent-vhost</name><!-- Service description --><description>This service is a service created from a minimal configuration</description><!-- java环境变量,有些电脑不支持中文,可以去除此注释 --><env name="JAVA_HOME" value="%JAVA_HOME%"/><executable>java</executable><arguments>-jar "D:\agent-vhost-windows\target\agent-vhost.jar"</arguments><!-- 开机启动 ,有些电脑不支持中文,可以去除此注释 --><startmode>Automatic</startmode>
</service>

xml文件内有些需要调整
1、<id>标签内是服务名称,<name>标签是显示名称,两者不能和已存在服务重名。
2、<arguments>标签中的jar包地址和名称需要替换成自己的
这样弄完了 到最后服务可能乱码,然后把<arguments>标签中写成:

<arguments>-Dfile.encoding=UTF-8 -jar "D:\agent-vhost-windows\target\agent-vhost.jar"</arguments>

四、安装服务

在exe所在目录执行cmd 然后再再命令提示框里面输入 xxx.exe install 命令
如需卸载服务: 在命令提示框里输入 xxx.exe uninstall
(命令中的xxx.exe,是下载下来的exe文件重命名后的文件名)

五、启动服务

在服务中找到自己安装的服务,右键启动。

六、把jar包放到项目外面

1、详情请看 https://www.cnblogs.com/xiaoqi/p/6955288.html
2、建议使用自定义配置文件,把配置文件放到哪里都不碍事,只需修改第三步骤就好。
3、修改第三步骤中的arguments 标签就可以了,主要就是添加项目访问配置文件路径。

<arguments>-Dfile.encoding=UTF-8 -jar -Dspring.config.location=D:\config\config.properties "D:\agent-vhost-windows\target\agent-vhost.jar"</arguments>

七、添加限制内存

1、详情请看 https://www.jianshu.com/p/de0c4118f2ce
2、修改第三步骤中的arguments 标签就可以了(添加-Xms512m -Xmx512m 限制内存521M)

<arguments>-Dfile.encoding=UTF-8 -Xms512m -Xmx512m -jar -Dspring.config.location=D:\config\config.properties "D:\agent-vhost-windows\target\agent-vhost.jar"</arguments>

Linux部署

Linux部署服务借鉴于此篇博文

一、准备

项目开发工具为 idea,采用 Maven 构建。
SpringBoot 包含一个 Maven 插件,它可以将项目打包成一个可执行 jar

二、服务

新建 systemd 服务文件
进入服务文件存放目录:cd /etc/systemd/system
新建服务文件:vi serviceName.service,内容如下:

[Unit]
Description=serviceName
After=syslog.target        //不可动[Service]
Type=simple              //不可动
ExecStart=/usr/java/jdk1.8.0_121/bin/java -Xmx512M -Xms512M -jar /home/service/serviceName.jar --server.port=8080[Install]
WantedBy=multi-user.target             //不可动

注:Description 和 ExecStart 根据自己项目修改。上述注释记得删除
-Xss:规定了每个线程虚拟机栈及堆栈的大小,一般情况下,256k是足够的,此配置将会影响此进程中并发线程数的大小。
-Xms:表示初始化JAVA堆的大小及该进程刚创建出来的时候,他的专属JAVA堆的大小,一旦对象容量超过了JAVA堆的初始容量,JAVA堆将会自动扩容到-Xmx大小。
-Xmx:表示java堆可以扩展到的最大值,在很多情况下,通常将-Xms和-Xmx设置成一样的,因为当堆不够用而发生扩容时,会发生内存抖动影响程序运行时的稳定性。

三、操作

启动服务:systemctl start serviceName
停止服务:systemctl stop serviceName
服务状态:systemctl status serviceName
项目日志:journalctl -u serviceName
开机启动:systemctl enable serviceName

注:上述命令中 serviceName 也可写为 serviceName.service

http://www.lryc.cn/news/104399.html

相关文章:

  • 网站服务器出错的原因分析和解决方法
  • 电影推荐系统】系统初步搭建及离线个性化推荐
  • Redis 集群 (cluster)
  • 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(19)-Fiddler精选插件扩展安装,将你的Fiddler武装到牙齿
  • 解决spring.thymeleaf.cache=false不起作用的问题
  • 企业可以申请DV https证书吗
  • 记一次phpmyadmin巧妙利用
  • HTML+CSS+JavaScript:轮播图的自动播放、手动播放、鼠标悬停暂停播放
  • 微信小程序:生成二维码带参数并获取值
  • 《Java面向对象程序设计》学习笔记——第 3 章 运算符、表达式和语句
  • XML约束和解析
  • 网络层:IP协议/Mac协议
  • 让你不在好奇怎么把录音转化成文字更快捷
  • 分布式异步任务处理组件(四)
  • 【C++】做一个飞机空战小游戏(一)——使用getch()函数获得键盘码值
  • Spring项目整合策略模式~实战应用
  • mybatis PageHelper的坑---记录
  • uniapp微信小程序下载文件并打开
  • 安卓Intent打开系统进程汇总
  • python学习(廖雪峰的官方网站部分,自学笔记)
  • python题-检查该字符串的括号是否成对出现
  • 3ds Max建模教程:模拟布料拖拽撕裂和用剑撕裂两种效果
  • 数据可视化(4)散点图及面积图
  • Redis - 数据过期策略
  • 英文论文(sci)解读复现:基于YOLOv5的自然场景下苹果叶片病害实时检测
  • 【Liux下6818开发板(ARM)】实现简易相册
  • Kubernetes(K8s)从入门到精通系列之六:K8s的基本概念和术语之存储类
  • Spark-统一内存模型
  • 类的继承和super关键字的使用(JAVA)
  • BGP属性+选路规则