私のプロジェクトでCIとCDのコンセプトを実装したいと思っています.Jenkins、SonarQube、ドッカーを一緒に使いたいのですが、今は混乱しています。これらのツールを使用して私のプロジェクトの。私のプロジェクト開発の展開への流れは?プロジェクトプロダクション用CICDツールの使用
答えて
広い質問ですが、基本的にJenkinsのビルドパイプラインは、開発者がソース管理の変更をプッシュするとトリガされます。パイプラインは、このようなものだろう:
- 実行ユニットは、& SonarQube分析
- その依存関係
- は、画像からドッカーコンテナを実行するアプリケーション&をパッケージ化ドッカーイメージを構築するテスト、プロジェクトをビルドし&統合テストを実行する
- QA環境のDockerコンテナとスモークテストを実行する
- 稼働中のDockerコンテナ
さまざまなバリエーションがありますが、いくつかの段階があり、それぞれ独自の品質のゲートがあり、すべて自動化されています。例えば。ユニットテストが失敗した場合、パイプラインは失敗し、イメージをビルドしません。統合テストが失敗した場合は、QA環境などにはデプロイしないでください。
Dockerを使用する利点は、イメージにバンドルされているため、各ステージで全く同じアプリケーションスタックが使用されることです。 prodに展開するのは、QAから承認したもので、これは統合テストに合格したものです。
プロダクションリリース前に、ユーザーがアプリをチェックできるように、手動で高品質のゲートを設置することができます。それは完全に自動化されたCDではありませんが、人々をより快適にすることができます。
エルtonにありがとう、それは私のために役立つでしょう。 –
また、[コードシップからのこの無料電子ブック](https://resources.codeship.com/ebooks/continuous-integration-continuous-delivery-with-docker)は、全領域の良い紹介です。 –
- 1. CICD VSTSを使用
- 2. PythonのCICDパイプライン
- 3. ジェンキンとソナークブとのCICD
- 4. Android differentsツールの使用
- 5. Kivy:イメージング用のツールを使用する
- 6. スプリングプロジェクトでhibernateツールを使用
- 7. lupdateツールを使用する
- 8. Aurelia-Polymer CLIツールを使用
- 9. ローカルストレージ用のツール
- 10. クロームのdevのツールを使用してクロムdevのツールのパフォーマンスフレーム
- 11. ローカルのCICD設定をセットアップする
- 12. 使用performance.mark()クロームのdevのツールのパフォーマンスタブ
- 13. コンソールからのVS2012 diffツールの使用
- 14. powershellのnuget外部ツールを使用
- 15. ブラックベリーのプリプロセッサ(bb-antツールを使用)
- 16. Gitkrakenの外部差分ツールを使用
- 17. Taurusツールでのメモリ使用率
- 18. 静的解析ツールの使用 - クリアケース/クエスト
- 19. linuxの自動ツールを使用して
- 20. ArcGISの描画ツールを使用
- 21. C++のインターネット使用状況監視ツール
- 22. Linuxでのプログラミングに使用するツール
- 23. トリガーとphpmyadminツールでの使用方法
- 24. WPFのアニメーション用ツール
- 25. Scala用のUMLツール
- 26. Androidでjobbツールを使用する
- 27. .NET開発に使用するORMツール
- 28. imageSegmenterツールを使用したMatlabイメージセグメンテーション
- 29. WekaツールでJavaを使用する
- 30. Googleツールを使用したカレンダーイベントQR?
この質問は、ヘルプセンターで定義された範囲内のプログラミングに関するものではないようです。 –