SpringBoot 打包与部署

平时都是自动化部署的,然后扔给我一台服务器,把这个项目部上去! 我就知道war包丢到tomcat里,其他的…
参考: http://www.imooc.com/wiki/springbootlesson/deploy.html
https://www.jdon.com/52327
https://www.cnblogs.com/xiaoqi/p/6955288.html

1,打包: mvn clean package -Dmaven.test.skip=true
doc报错的话 使用 mvn clean install -Dmaven.test.skip=true -X -Dmaven.javadoc.skip=true
2, 上传 将打好的包上传至服务器
3,部署 java -jar xxxxx.jar
如果要引用外部的配置文件

java -jar -Dspring.config.location=D:\config\config.properties springbootrestdemo-0.0.1-SNAPSHOT.jar   

实际使用 nohup java -jar -Dspring.config.location=D:\config\config.properties springbootrestdemo-0.0.1-SNAPSHOT.jar > nohup.out 2>&1 &
通常这些指令是放在start.sh中的
在JenKins的自动部署中可以直接使用脚本:
参照: https://github.com/tyrion9/spring-boot-startup-script/blob/master/bootstrap.sh
bootstrap.sh
注意: 同一台机器中部署多个服务器端口号(5006) 要修改成不一样的

#!/bin/bash

######################################################
# Copyright 2019 Pham Ngoc Hoai
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Repo: https://github.com/tyrion9/spring-boot-startup-script
#
######### PARAM ######################################

#JAVA_OPT=-Xmx1024m -Djava.security.egd=file:/dev/./urandom
JARFILE=`ls -1r *.jar 2>/dev/null | head -n 1`
PID_FILE=pid.file
RUNNING=N
PWD=`pwd`

######### DO NOT MODIFY ########

if [ -f $PID_FILE ]; then
        PID=`cat $PID_FILE`
        if [ ! -z "$PID" ] && kill -0 $PID 2>/dev/null; then
                RUNNING=Y
        fi
fi

start()
{
        if [ $RUNNING == "Y" ]; then
                echo "Application already started"
        else
                if [ -z "$JARFILE" ]
                then
                        echo "ERROR: jar file not found"
                else
                        # source enviroment include java command
                        source /etc/profile; nohup java  -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5006 -jar $PWD/$JARFILE > nohup.out 2>&1  &
                        echo $! > $PID_FILE
                        echo "Application $JARFILE starting..."
                        #tail -f nohup.out
                fi
        fi
}

stop()
{
        if [ $RUNNING == "Y" ]; then
                kill -9 $PID
                rm -f $PID_FILE
                echo "Application stopped"
        else
                echo "Application not running"
        fi
}

restart()
{
        stop
        start
}

case "$1" in

        'start')
                start
                ;;

        'stop')
                stop
                ;;

        'restart')
                restart
                ;;

        *)
                echo "Usage: $0 {  start | stop | restart  }"
                exit 1
                ;;
esac
exit 0

和xxx.jar包同目录 命令:

./bootstrap.sh start
./bootstrap.sh stop
./bootstrap.sh restart
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值