2016-10-20 67 views
-1

我想用我的項目實現CI和CD的概念,我想用Jenkins,SonarQube和docker一起使用它,現在我感到困惑,我怎麼能夠設計系統架構師我的項目與這些工具。我的項目開發流程將如何部署?使用CICD工具進行項目生產

+0

此問題似乎並不涉及幫助中心定義的範圍內的編程。 –

回答

1

這是一個廣泛的問題,但基本上你要做的是將Jenkins中的構建管道放在一起,當開發人員將更改推送到源代碼管理時觸發。管道會做這樣的事情:

  • 構建項目,運行單元測試& SonarQube分析
  • 建立其封裝了應用&它的依賴泊塢窗圖像
  • 從圖像&運行泊塢容器運行集成測試
  • 運行/升級QA環境中的碼頭集裝箱並運行冒煙測試
  • 運行/升級生產中的碼頭集裝箱

有很多變化,但核心思想是有幾個階段,每個階段都有自己的質量門,並且都是自動的。例如。如果單元測試失敗,管道將失敗,並且您不會構建映像;如果集成測試失敗,則不要部署到QA環境等。

使用Docker的優點是每個階段都使用完全相同的應用程序堆棧,因爲它捆綁在映像中。您在prod中部署的內容是您從QA批准的內容,即通過集成測試的內容。

您可以在產品發佈之前設置手動質量門,供人類檢查應用程序。這不是完全自動化的CD,但它可以讓人更舒適。

+0

謝謝埃爾頓,這對我很有幫助。 –

+0

此外,[這個免費的Codeship電子書](https://resources.codeship.com/ebooks/continuous-integration-continuous-delivery-with-docker)是一個很好的介紹整個領域。 –