私のプロジェクトで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
- 2. Android differentsツールの使用
- 3. スプリングプロジェクトでhibernateツールを使用
- 4. Aurelia-Polymer CLIツールを使用
- 5. lupdateツールを使用する
- 6. ローカルストレージ用のツール
- 7. コンソールからのVS2012 diffツールの使用
- 8. C++のインターネット使用状況監視ツール
- 9. Linuxでのプログラミングに使用するツール
- 10. ブラックベリーのプリプロセッサ(bb-antツールを使用)
- 11. 静的解析ツールの使用 - クリアケース/クエスト
- 12. トリガーとphpmyadminツールでの使用方法
- 13. linuxの自動ツールを使用して
- 14. Scala用のUMLツール
- 15. WPFのアニメーション用ツール
- 16. ETLツールを使用したOrientDBインポートエッジ
- 17. Androidでjobbツールを使用する
- 18. Googleツールを使用したカレンダーイベントQR?
- 19. .NET開発に使用するORMツール
- 20. シェルスクリプトを使用した検索ツール
- 21. git merge vs2012 diffツールを使用
- 22. ルールエンジン用ツール(コントロール)GUI
- 23. Blueprint XML用Eclipseツール
- 24. DataTable用のツールの整列
- 25. PostgreSQL用のデータベース同期ツール
- 26. iPhoneアプリのローカライズ用ツール
- 27. Javaバックエンド用のベストRIAツール
- 28. .NET用のSTEP/EXPRESSツール
- 29. Qtアプリケーション用のUMLツール
- 30. Javaアプリケーションのデバッグ用ツール
この質問は、ヘルプセンターで定義された範囲内のプログラミングに関するものではないようです。 –