美文网首页我爱编程
SpringBoot生产部署

SpringBoot生产部署

作者: 上进的小二狗 | 来源:发表于2018-08-09 11:55 被阅读0次

    一、注意事项

    1、 去除不需要的 去除不需要的 jar
    开发工具 jar : spring- - boot- - devtools
    2、

    • 监控一定要做好权限控制或者去除
    • 控制 jar : spring- - boot- - starter- - actuator
    • druid 的监控
    • swagger 的接口

    3、打包 , 跳过测试
    maven : clean package -Dmaven.test.skip=true
    在eclispe 中直接输入maven 命令即可
    idea 相对较复杂

    因此,直接找到项目在Windows中的路径,用命令行打包 项目路径
    输入cmd 后回撤,进入当前项目目录 cmd
    输入打包命(跳过测试) 打包
    Build Success 后会在项目target 目录下生成 jar 文件,即打包完成 jar文件

    二、脚本

    脚本文件的编写运行
    一般编写之后需要于赋权

    #!/bin/sh
    
    ## chang here
    SERVICE_DIR=/roncoo/spring-boot-demo
    SERVICE_NAME=spring-boot-demo-31-1-0.0.1-SNAPSHOT
    SPRING_PROFILES_ACTIVE=dev
    
    ## java env
    export JAVA_HOME=/opt/jdk1.7.0_79
    export JRE_HOME=${JAVA_HOME}/jre
    
    case "$1" in 
        start)
            procedure=`ps -ef | grep -w "${SERVICE_NAME}" |grep -w "java"| grep -v "grep" | awk '{print $2}'`
            if [ "${procedure}" = "" ];
            then
                echo "start ..."
                if [ "$2" != "" ];
                then
                    SPRING_PROFILES_ACTIVE=$2
                fi
                echo "spring.profiles.active=${SPRING_PROFILES_ACTIVE}"
                exec nohup ${JRE_HOME}/bin/java -Xms128m -Xmx512m -jar ${SERVICE_DIR}/${SERVICE_NAME}\.jar --spring.profiles.active=${SPRING_PROFILES_ACTIVE} >/dev/null 2>&1 &
                echo "start success"
            else
                echo "${SERVICE_NAME} is start"
            fi
            ;;
            
        stop)
            procedure=`ps -ef | grep -w "${SERVICE_NAME}" |grep -w "java"| grep -v "grep" | awk '{print $2}'`
            if [ "${procedure}" = "" ];
            then
                echo "${SERVICE_NAME} is stop"
            else
                kill -9 ${procedure}
                sleep 1
                argprocedure=`ps -ef | grep -w "${SERVICE_NAME}" |grep -w "java"| grep -v "grep" | awk '{print $2}'`
                if [ "${argprocedure}" = "" ];
                then
                    echo "${SERVICE_NAME} stop success"
                else
                    kill -9 ${argprocedure}
                    echo "${SERVICE_NAME} stop error"
                fi
            fi
            ;;
            
        restart)
            $0 stop
            sleep 1
            $0 start $2
            ;;  
            
        *)
            echo "usage: $0 [start|stop|restart] [dev|test|prod]"
            ;;  
    esac
    
    

    三、根据脚本文件部署

    相关文章

      网友评论

        本文标题:SpringBoot生产部署

        本文链接:https://www.haomeiwen.com/subject/nkuqbftx.html