ubuntu 18.04LTS中部署spring boot 包,并实现开机自启动

本文记录了在Ubuntu 18.04LTS Server上部署Spring Boot应用的过程,包括如何修改pom.xml以避免使用`java -jar`启动,将jar包上传至服务器,赋予执行权限,创建软链接到`/etc/init.d`,以及设置为开机自启动服务的方法。此外,还提供了删除该服务的命令。

Ubuntu 18.04LTS Server版是比较流行的服务器操作系统,很爱广大开发和运维人员喜爱。但是,该版本较以往的版本有较大改动,致使许多系统运维的配置办法无效,让程序员和运维人员比较头疼。本人在产品实施过程中,遇到了一个比较典型的问题,找了好半天终于把路子走通,在此做一下记录,与大家分享。

需求:将基于Spring Boot开发的工程文件,打包发布到ubuntu服务器中(18.04LTS),并实现开机自启。

解决方案:上网百度+soso。网上有好多方法和文章,但好像都是只言片语。

采坑拨乱:

1.假设您的工程是基于maven构建在idea下开发的:需要对项目的pom文件进行如下修改:

<build>
   <finalName>hello</finalName>
   <plugins>
      <plugin>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-maven-plugin</artifactId>
         <configuration>
            <executable>true</executable>
         </configuration>
      </plugin>
   </plugins>
</build>

以上代码在大家的工程里都比较常见,但是加粗部分是关键,这样通过maven打的包,可以不用java -jar XX.jar的形式来调用。后面大家会感到它的便利。

2.将生成的jar包(在target目录下)上传到ubuntu 服务器,比如我在自己的opt 下建了一个myapp的路径:/opt/myapp,并将它授权给我自己 sudo chown myusergroup:myuser  /opt/myapp.

3.将这个jar包赋于可执行权:sudo chmod -R 777 hello.jar,(直接高效777,简单粗暴黑客笑,哈)。

4.做个软链接到/etc/init.d, sudo ln -s /opt/myapp/hello.jar hello,然后用 sudo /etc/init.d/hello start 见证一下奇迹。

5.关键的来了,用sudo update-rc.d hello default 90 命令给做成系统服务(90是序号,好像最大是99,服务启动的序号)。

重启系统,见证神奇,告别java -jar。

------------------------------------------------------

tips: 删除该服务可用 sudo update-rc.d -f hello remove 命令。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值