ソリューションのアーキテクチャ: Visual Studio Team Services を使用した Azure Web アプリの継続的インテグレーションと継続的デプロイ (CI/CD)

Azure で、より手軽な Web アプリの継続的デプロイを実現しましょう。Azure App Service は、ASP.NET、Java、Node、または PHP を使用して Web アプリを作成するシンプルで迅速な方法です。これらの Web アプリの耐久性を高め、常に最新に保つには、各変更内容を自動的にプッシュするための継続的インテグレーションと継続的デプロイ (CI/CD) のパイプラインが必要です。

継続的インテグレーションと継続的デプロイのツールを利用するには、CI/CD に対応するように Visual Studio Team Services で App Service の Web Apps 機能を設定します。Visual Studio Team Services は、バージョン管理用の Git リポジトリ、継続的インテグレーション用のビルド システム、継続的デプロイ用のリリース管理システムを提供します。これらのツールを使用して、さまざまな環境を通したリポジトリへのコミットや運用 Web サイトへのコミットを 1 つずつ追跡できます。Azure Application Insights はフィードバック ループを閉じ、運用環境で発生する問題を特定のデプロイや、そのデプロイ内の特定のコード変更に関連付けます。

Commit Deployment Continuous integration trigger Make changes to application Review data Continuous Deployment Trigger Visual Studio Team Services Application code,Web.config file Visual Studio Team Services Web package,Web.config file Visual Studio Team Services App Service Monitoring Application Insights Health, Performance, Usage Developer Visual Studio Environment specific Web.config files

実装ガイダンス

製品/説明 ドキュメント

Visual Studio Team Services Build を使用して、継続的インテグレーション ビルドを設定し、各コミットで高品質を確保します。

Visual Studio Team Services Release Management を使用して、ビルドが問題なく完了したら、Azure Web サイトへの自動デプロイをトリガーします。

App Service

Azure App Service を使用して、言語やプラットフォームに関わらずアプリケーションをホストします。

Visual Studio

Visual Studio Code と Visual Studio を使用して ASP.NET、ASP.NET Core、Node、PHP、または Java を開発します。

Visual Studio Team Services Git リポジトリでチーム メンバーと連携し、コードを共有します。

Application Insights

Application Insights で、Web アプリでの問題を検出し、クラッシュを診断し、使用状況を追跡します。開発ライフサイクルを通して、情報に基づいた意思決定が可能です。

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

Commit Azure VMs Azure VMs Dev / Test lab Continuous integration trigger Continuous deployment trigger Deployment to QAenvironment Deployment toproductionenvironment Deployment tostagingenvironment Visual Studio TeamServices Git Application code,ARM template Visual Studio TeamServices CI Build, ARM template Visual Studio TeamServices CD Environmental specificARM parameters

Visual Studio Team Services を使用した Virtual Machines の継続的デプロイ

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

詳細情報
Commit Build Bake Release Deploy git Jenkins Azure ContainerRegistry NetflixSpinnaker Azure ContainerServices - Kubernetes

オープンソースソフトウェア (OSS) を使用したコンテナーの継続的インテグレーションと継続的デプロイ (CI/CD)

Kubernetes には、コンテナー化されたアプリケーション用の分散プラットフォームが用意されています。Azure と Kubernetes を統合することで、簡単かつ迅速に継続的デプロイが実現します。

詳細情報
Continuous integration trigger Azure Container Service (Registry) Push container image Pull container image Continuous deployment trigger Deployment Visual Studio Team Services Git Visual Studio Team Services CI Application code, Docker files, Compose files, Deployment files Container images Compose files, Deployment files Environment specific Compose files, Deployment files Running containers Azure Container Service (Kubernetes, Swarm, or DC/OS) Visual Studio Team Services CD Commit

Visual Studio Team Services を使用したコンテナーの継続的インテグレーションと継続的デプロイ (CI/CD)

コンテナーをデプロイすることで、アプリケーションの継続的な更新や改善が簡単に行えます。Azure Container Service で Kubernetes や DC/OS を使用してコンテナーの継続的インテグレーションや継続的デプロイを調整することで、管理しやすい複製可能なクラスターを作成します。継続的ビルドでコンテナー イメージを作成、調整するように構成することにより、Visual Studio Team Services を使用してより高い信頼性でより迅速にデプロイできます。

詳細情報