Shell指令碼 自動部署 SpringBoot 應用

來源:互聯網
上載者:User

標籤:完全   gpo   else   clean   $nf   echo   targe   開發   roo   

公司項目使用了SpringBoot。開發的應用需要自動上傳到伺服器。雖然目前對熱部署還沒完全掌握。先使用shell簡化一下部署吧。

# 上傳密鑰sshLoginKey=/f/MyFile/root.key# 項目在原生目錄MyProject=/d/MyProject/comment# 遠程主機上的路徑RemoteHost=[email protected]RemotePath=$RemoteHost:/data/if [ -f "$sshLoginKey" -a -d "$MyProject" ];then    cd $MyProject    # 只輸出錯誤    mvn clean package -q    # 尋找target目錄中,最近1分鐘內打包的檔案,與檔案名稱解耦,更加通用    fileName=$(find target -size +15M -type f -cmin -1)    if [ -e "$fileName" ];then        echo "打包成功"        scp -P 2233 -i $sshLoginKey $fileName $RemotePath;        if [ $? -eq 0 ];then            echo "上傳成功。";            # 停止服務            ssh -p 2233 $RemoteHost -i $sshLoginKey "ps -ef | awk ‘\$NF~/comment/{print \$2}‘ | xargs kill -9 "                        # 啟動服務            # ssh -p 2233 $RemoteHost -i $sshLoginKey "/root/jdk1.8.0_152/bin/java -jar /data/comment.jar 2>&1 >/var/log/comments.log &"        else            echo "上傳失敗。";        fi    else        echo "打包失敗"        exit 1    fi    if [ -f "$fileName" ];then        rm -rf $fileName    fielse    echo "密鑰或項目不存在";    sleep 5s;fi

 

Shell指令碼 自動部署 SpringBoot 應用

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.