springboot项目部署java -jar方式

以下部署方式,是java开发人员简单部署到服务器,生产中公司一般都有自己的发布系统。

1、将项目打包成jar包

1)使用编译器集成工具打包
或者
2)在项目根目录使用maven指令打包
mvn clean package -Dmaven.test.skip=true

2、将生成的jar包拷贝到我们的linux服务器上

scp target/xxx.jatr [email protected]:/opt/javaapps

3、进入xxx.jar所在目录/opt/javaapps,执行jar命令,启动服务

jar -jar xxx.jar

      本地即可访问linux服务器所在ip或者域名+端口号+具体接口,就可以调用服务了。

#修改启动服务的端口
jar -jar -Dserver.port=8081 xxx.jar
#启动时指定运行环境
java -jar -Dserver.port=8081 -Dspring.profiles.active=prod xxx.jar
#服务以后台形式启动,使用linux下的nohup命令
nohup java -jar xxx.jar > /dev/null 2>&1 &

#我们经常使用nohup command &命令形式来启动一些后台程序,比如一些java服务:
nohup java -jar xxxx.jar &

1). >/dev/null
       这条命令的作用是将标准输出1重定向到/dev/null中。 /dev/null代表linux的空设备文件,所有往这个文件里面写入的内容都会丢失,俗称“黑洞”。那么执行了>/dev/null之后,标准输出就会不再存在,没有任何地方能够找到输出的内容。
2). 2>&1
       这条命令用到了重定向绑定,采用&可以将两个输出绑定在一起。这条命令的作用是错误输出将和标准输出同用一个文件描述符,说人话就是错误输出将会和标准输出输出到同一个地方。

4、在centos7中推荐service用法

#进入/etc/systemd/system目录
cd /etc/systemd/system

#新建项目jar的service
vim xxx.service

#xxx.service的文件内容如下:
[Unit]
Description=xxx
After=syslog.target network.target

[Service]
Type=simple

ExecStart=/usr/bin/java -jar /opt/javaapps/xxx.jar
ExecStop=/bin/kill -15 $MAINPID 

User=root
Group=199620

[Install]
WantedBy=nulti-user.target

    启动我们自定义的服务service

systemctl start xxx #启动,xxx为我们自定义服务名
systemctl stop xxx #停止

    设置开机启动

systemctl enable xxx

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章