コンテナーの CI/CD

コンテナーにより、アプリケーションの継続的なビルドとデプロイが大幅に簡単になります。Azure Container Service で Kubernetes を使用してそれらのコンテナーのデプロイを調整すれば、複製できて管理しやすいコンテナーのクラスターを作成できます。

Visual Studio Team Services でコンテナー イメージを生成するための継続的ビルドとオーケストレーションを設定すれば、デプロイのスピードと信頼性を高めることができます。

Visual StudioTeam Services Git Visual StudioTeam Services CI Visual StudioTeam Services CD Azure Container Service(Managed Kubernetes) Azure ContainerRegistry 3 5 4 7 6 Engineer Visual Studio Azure ApplicationInsights 1 9 8 Visual StudioTeam Services Backlog 2 10

アプリケーションのソース コードを変更

アプリケーション コードをコミット

継続的インテグレーションにより、アプリケーションのビルド、コンテナー イメージのビルド、および単体テストが発生

コンテナー イメージを Azure Container Registry にプッシュ

継続的配置トリガーが、環境固有のパラメーターでアプリケーション成果物のデプロイを調整

Azure Container Service にデプロイ

コンテナー イメージにより Azure Container Registry からコンテナーが起動

Application Insights が正常性、パフォーマンス、使用状況のデータを収集および分析

正常性、パフォーマンス、使用状況の情報を確認

バックログ項目を更新

  1. 1 アプリケーションのソース コードを変更
  2. 2 アプリケーション コードをコミット
  3. 3 継続的インテグレーションにより、アプリケーションのビルド、コンテナー イメージのビルド、および単体テストが発生
  4. 4 コンテナー イメージを Azure Container Registry にプッシュ
  5. 5 継続的配置トリガーが、環境固有のパラメーターでアプリケーション成果物のデプロイを調整
  1. 6 Azure Container Service にデプロイ
  2. 7 コンテナー イメージにより Azure Container Registry からコンテナーが起動
  3. 8 Application Insights が正常性、パフォーマンス、使用状況のデータを収集および分析
  4. 9 正常性、パフォーマンス、使用状況の情報を確認
  5. 10 バックログ項目を更新

実装ガイダンス

製品/説明 ドキュメント

Container Registry

あらゆる種類の Azure デプロイ間でコンテナー イメージを保存および管理

Azure Container Service (AKS)

Kubernetes のデプロイ、管理、操作を簡略化する

Application Insights

Web アプリおよびサービスにおける問題の検知、トリアージ、および診断

Visual Studio Team Services

マルチプラットフォーム アプリをビルドおよびデプロイして Azure サービスを最大限に活用できます

関連ソリューションのアーキテクチャ

Visual StudioTeam Services Git Visual StudioTeam Services CI Visual StudioTeam Services Backlog Visual StudioTeam Services CD AzureVirtual Machines Azure DevTestLabs AzureVirtual Machines 3 2 1 4 6 5 8 8 8 9 7 AzureApplication Insights Visual Studio Engineer 10

Azure VM の CI/CD

Azure は、Windows または Linux を実行する仮想マシンをホストするための世界レベルのクラウドです。アプリケーション開発で ASP.NET、Java、Node.js、PHP のいずれを使用する場合でも、変更内容をこれらの仮想マシンに自動的にプッシュするためには、継続的インテグレーションと継続的配置 (CI/CD) のパイプラインが必要です。

Jenkins Azure ContainerInstances AzureFiles Azure WebApps Azure Databasefor MySQL GitHub IntelliJ Engineer ApplicationInsights 1 8 2 3 4 5 6 7 7

Jenkins と Azure Web Apps を使った Java CI/CD

Azure App Service では Java、Node、PHP、または ASP.NET を使った Web アプリをシンプルかつスピーディーに作成できるほか、Docker を使ったカスタム言語ランタイムをサポートすることもできます。各変更内容を自動的に Azure アプリ サービスにプッシュするための継続的インテグレーションと継続的配置 (CI/CD) のパイプラインによって、ユーザーにこれまでよりも早く価値を提供できます。