1. 程式人生 > >Jenkins spring boot 自動部署方案

Jenkins spring boot 自動部署方案

微服務 技術 部署 com 中小型 手動 ges 進行 結果

原文地址:http://www.cnblogs.com/skyblog/p/5632869.html

現在主流的自動部署方案大都是基於Docker的了,但傳統的自動部署方案比較適合中小型公司,下面的方案就是比較傳統的自動部署方案。

1、為什麽需要自動部署

  基於微服務的架構,自動部署顯得非常重要。因為每一個服務都需要部署。如果是手動部署,那麽有M個服務,那麽至少需要部署M次,如果每個同樣的服務部署N個實例,那麽就需要部署M*N次。所以自動部署對於微服務架構幾乎是必須的,這一點不同於傳統應用。

技術分享

2、如何實現自動部署

自動部署一般都是通過以下步驟進行的。首選由持續性集成工具進行自動編譯產生項目的輸出,對於我們來說也就是jar包。然後該jar經過測試就可以分發到各個服務器,各個服務器的監控腳本監控到該新版本,自動停止舊實例重新運行新實例。

技術分享

上面只是一個大概的步驟,真實的實現還需要更詳細的步驟,如下:

技術分享

  Jenkins編譯的結果需要暫時存放,以便於測試人員拉取進行測試。這裏存放在maven庫中。測試通過後也需要手動推送到生產環境,因為不可能每個版本都推送到生產環境。生產環境需要一臺FTP或GIT、SVN Server作為中轉機,暫存打包的應用,然後生產的服務器通過腳本輪詢該中轉機獲得新的版本。獲得新的版本後,自動停止舊的版本,運行新的版本。

Jenkins spring boot 自動部署方案