App Service の概要App Service overview

Azure App Service は、Web アプリケーション、REST API、およびモバイル バックエンドをホストするための HTTP ベースのサービスです。Azure App Service is an HTTP-based service for hosting web applications, REST APIs, and mobile back ends. 開発には、.NET、.NET Core、Java、Ruby、Node.js、PHP、Python のうち、お気に入りの言語をご利用いただけます。You can develop in your favorite language, be it .NET, .NET Core, Java, Ruby, Node.js, PHP, or Python. アプリケーションの実行とスケーリングは、Windows ベースの環境と Linux ベースの環境の両方で容易に行うことができます。Applications run and scale with ease on both Windows and Linux-based environments.

App Service は、セキュリティ、負荷分散、自動スケーリング、自動管理などの Microsoft Azure の機能を、アプリケーションに追加するだけではありません。App Service not only adds the power of Microsoft Azure to your application, such as security, load balancing, autoscaling, and automated management. Azure DevOps、GitHub、Docker Hub およびその他のソースからの継続的デプロイ、パッケージ管理、ステージング環境、カスタム ドメイン、TLS/SSL 証明書など、DevOps 機能を利用することもできます。You can also take advantage of its DevOps capabilities, such as continuous deployment from Azure DevOps, GitHub, Docker Hub, and other sources, package management, staging environments, custom domain, and TLS/SSL certificates.

App Service では、使用した Azure コンピューティング リソースに応じて課金されます。With App Service, you pay for the Azure compute resources you use. 使用するコンピューティング リソースは、アプリが実行されている "App Service プラン" によって決まります。The compute resources you use are determined by the App Service plan that you run your apps on. 詳細については、「Azure App Service プランの概要」を参照してください。For more information, see Azure App Service plans overview.

App Service を使用する理由Why use App Service?

App Service の主な機能として、次のようなものがあります。Here are some key features of App Service:

  • 複数の言語とフレームワーク - App Service では、ASP.NET、ASP.NET Core、Java、Ruby、Node.js、PHP、および Python が最高レベルでサポートされています。Multiple languages and frameworks - App Service has first-class support for ASP.NET, ASP.NET Core, Java, Ruby, Node.js, PHP, or Python. また、PowerShell などのスクリプトや実行可能ファイルをバックグラウンド サービスとして実行することもできます。You can also run PowerShell and other scripts or executables as background services.
  • マネージド運用環境 - App Service が自動的に パッチを適用し、OS と言語フレームワークを管理します。Managed production environment - App Service automatically patches and maintains the OS and language frameworks for you. 高品質なアプリの作成に専念し、プラットフォームにまつわる問題は Azure に任せましょう。Spend time writing great apps and let Azure worry about the platform.
  • コンテナー化と Docker - アプリを Docker でコンテナー化し、App Service でカスタムの Windows または Linux コンテナーをホストできます。Containerization and Docker - Dockerize your app and host a custom Windows or Linux container in App Service. Docker Compose で複数コンテナー アプリを実行できます。Run multi-container apps with Docker Compose. Docker のスキルを App Service に直接移行できます。Migrate your Docker skills directly to App Service.
  • DevOps の最適化 - 継続的インテグレーションと継続的デプロイを、Azure DevOps、GitHub、BitBucket、Docker Hub、または Azure Container Registry で設定できます。DevOps optimization - Set up continuous integration and deployment with Azure DevOps, GitHub, BitBucket, Docker Hub, or Azure Container Registry. テスト環境やステージング環境を介して更新を反映できます。Promote updates through test and staging environments. App Service でのアプリの管理には、Azure PowerShell またはクロスプラットフォーム コマンド ライン インターフェイス (CLI) を使用します。Manage your apps in App Service by using Azure PowerShell or the cross-platform command-line interface (CLI).
  • 高可用性を備えたグローバルなスケール - 手動または自動で スケールアップまたは スケールアウトを実行できます。Global scale with high availability - Scale up or out manually or automatically. Microsoft のグローバルなデータセンター インフラストラクチャのどこででもアプリをホストでき、App Service の SLA によって高可用性が保証されます。Host your apps anywhere in Microsoft's global datacenter infrastructure, and the App Service SLA promises high availability.
  • SaaS プラットフォームおよびオンプレミス データへの接続 - エンタープライズ システム (SAP など)、SaaS サービス (Salesforce など)、インターネット サービス (Facebook など) 向けに用意された 50 を超える コネクタから選択できます。Connections to SaaS platforms and on-premises data - Choose from more than 50 connectors for enterprise systems (such as SAP), SaaS services (such as Salesforce), and internet services (such as Facebook). また、ハイブリッド接続Azure Virtual Networks を利用して、オンプレミスのデータにアクセスできます。Access on-premises data using Hybrid Connections and Azure Virtual Networks.
  • セキュリティとコンプライアンス - App Service は ISO、SOC、および PCI に準拠しています。Security and compliance - App Service is ISO, SOC, and PCI compliant. Azure Active DirectoryGoogleFacebookTwitter、または Microsoft アカウントでユーザーを認証します。Authenticate users with Azure Active Directory, Google, Facebook, Twitter, or Microsoft account. IP アドレス制限を作成し、サービス ID を管理します。Create IP address restrictions and manage service identities.
  • アプリケーション テンプレート - WordPress、Joomla、Drupal など、Azure Marketplace にある詳細な一覧からアプリケーション テンプレートを選択します。Application templates - Choose from an extensive list of application templates in the Azure Marketplace, such as WordPress, Joomla, and Drupal.
  • Visual Studio と Visual Studio Code の統合 - Visual Studio と Visual Studio Code の専用ツールを使用することで、作成、デプロイ、デバッグの作業を効率化することができます。Visual Studio and Visual Studio Code integration - Dedicated tools in Visual Studio and Visual Studio Code streamline the work of creating, deploying, and debugging.
  • API とモバイル機能 - App Service は、RESTful API シナリオに対してターンキー CORS サポートを提供するほか、認証、オフライン データ同期、プッシュ通知などを有効にして、モバイル アプリのシナリオを簡素化します。API and mobile features - App Service provides turn-key CORS support for RESTful API scenarios, and simplifies mobile app scenarios by enabling authentication, offline data sync, push notifications, and more.
  • サーバーレス コード - コード スニペットまたはスクリプトをオンデマンドで実行します。その際、インフラストラクチャを明示的にプロビジョニングまたは管理する必要はありません。また、コードによって実際に使用されたコンピューティング時間のみが課金対象となります (Azure Functions に関するページを参照)。Serverless code - Run a code snippet or script on-demand without having to explicitly provision or manage infrastructure, and pay only for the compute time your code actually uses (see Azure Functions).

App Service の他に、Azure では Web サイトと Web アプリケーションをホストするために利用できるサービスも提供しています。Besides App Service, Azure offers other services that can be used for hosting websites and web applications. ほとんどの場合は、App Service が最適な方法になります。For most scenarios, App Service is the best choice. マイクロサービス アーキテクチャの場合は、Azure Spring-Cloud サービスまたは Service Fabric を検討してください。For microservice architecture, consider Azure Spring-Cloud Service or Service Fabric. また、コードの実行に使用する VM をより細かく制御する必要がある場合は、Azure Virtual Machines の利用を検討してください。If you need more control over the VMs on which your code runs, consider Azure Virtual Machines. これらの Azure サービスから適切なサービスを選択する方法の詳細については、「Azure App Service、Virtual Machines、Service Fabric、Cloud Services の比較」を参照してください。For more information about how to choose between these Azure services, see Azure App Service, Virtual Machines, Service Fabric, and Cloud Services comparison.

App Service on LinuxApp Service on Linux

App Service では、サポートされているアプリケーション スタック向けに Web アプリを Linux 上でネイティブにホストすることもできます。App Service can also host web apps natively on Linux for supported application stacks. また、カスタム Linux コンテナー (Web App for Containers とも呼ばれます) を実行することもできます。It can also run custom Linux containers (also known as Web App for Containers).

組み込みの言語とフレームワークBuilt-in languages and frameworks

App Service on Linux では、さまざまな言語に固有の組み込みイメージがサポートされています。App Service on Linux supports a number of language specific built-in images. コードをデプロイするだけで済みます。Just deploy your code. 以下の言語がサポートされています。Node.js、Java (JRE 8 と JRE 11)、PHP、Python、.NET Core、および Ruby。Supported languages include: Node.js, Java (JRE 8 & JRE 11), PHP, Python, .NET Core, and Ruby. az webapp list-runtimes --linux を実行して、最新の言語とサポートされているバージョンを表示します。Run az webapp list-runtimes --linux to view the latest languages and supported versions. アプリケーションに必要なランタイムが組み込みイメージでサポートされていない場合は、カスタム コンテナーを使用してデプロイできます。If the runtime your application requires is not supported in the built-in images, you can deploy it with a custom container.

古くなったランタイムは、ポータルの Web Apps の [作成] および [構成] ブレードから定期的に削除されます。Outdated runtimes are periodically removed from the Web Apps Create and Configuration blades in the Portal. これらのランタイムは、管理している組織によって非推奨とされた場合や、重大な脆弱性が見つかった場合、ポータルに表示されません。These runtimes are hidden from the Portal when they are deprecated by the maintaining organization or found to have significant vulnerabilities. これらの選択肢は、最もうまく動作する最新のランタイムへと顧客を導くために非表示になります。These options are hidden to guide customers to the latest runtimes where they will be the most successful.

古くなったランタイムがポータルで非表示になっても、そのバージョンを使用している既存のどのサイトも引き続き実行されます。When an outdated runtime is hidden from the Portal, any of your existing sites using that version will continue to run. ランタイムが App Service プラットフォームから完全に削除される場合、Azure サブスクリプションの所有者は、削除前に電子メール通知を受け取ります。If a runtime is fully removed from the App Service platform, your Azure subscription owner(s) will receive an email notice before the removal.

ポータルに表示されなくなった古いランタイム バージョンを使用して別の Web アプリを作成する必要がある場合は、自分のサイトのランタイム バージョンを取得する方法に関する手順について、言語構成ガイドを参照してください。If you need to create another web app with an outdated runtime version that is no longer shown on the Portal see the language configuration guides for instructions on how to get the runtime version of your site. Azure CLI を使用すると、同じランタイムを使用して別のサイトを作成できます。You can use the Azure CLI to create another site with the same runtime. あるいは、ポータルの Web アプリ ブレードにある [テンプレートのエクスポート] ボタンを使用して、サイトの ARM テンプレートをエクスポートできます。Alternatively, you can use the Export Template button on the web app blade in the Portal to export an ARM template of the site. このテンプレートを再利用して、同じランタイムと構成で新しいサイトをデプロイできます。You can reuse this template to deploy a new site with the same runtime and configuration.


  • App Service on Linux は、共有価格レベルではサポートされていません。App Service on Linux is not supported on Shared pricing tier.
  • Windows と Linux のアプリを同じ App Service プランに混在させることはできません。You can't mix Windows and Linux apps in the same App Service plan.
  • 従来、同じリソース グループ内に、Windows と Linux のアプリを混在させることはできませんでした。Historically, you can't mix Windows and Linux apps in the same resource group. ただし、2021 年 1 月 21 日以降に作成されたすべてのリソース グループでは、このシナリオがサポートさえます。However, all resource groups created on or after January 21, 2021 do support this scenario. 2021 年 1 月 21 日より前に作成されたリソース グループについては、混在するプラットフォーム デプロイを追加する機能は、近日中に Azure リージョン (国内クラウド リージョンを含む) 全体にロールアウトされます。For resource groups created before January 21, 2021, the ability to add mixed platform deployments will be rolled out across Azure regions (including National cloud regions) soon.
  • Azure portal では、Linux アプリで現在動作している機能のみが表示されます。The Azure portal shows only features that currently work for Linux apps. 機能が有効になると、ポータルでアクティブになります。As features are enabled, they're activated on the portal.
  • 組み込みイメージにデプロイされているコードとコンテンツには、Azure Storage によってサポートされる、Web コンテンツ用のストレージ ボリュームが割り当てられます。When deployed to built-in images, your code and content are allocated a storage volume for web content, backed by Azure Storage. このボリュームのディスク待ち時間は、コンテナー ファイルシステムの待ち時間よりも長く、可変です。The disk latency of this volume is higher and more variable than the latency of the container filesystem. コンテンツ ファイルに対する高負荷の読み取り専用アクセスが必要なアプリでは、コンテンツ ボリュームではなく、コンテナー ファイルシステムにファイルを配置するカスタム コンテナー オプションを使用した方が有益な場合があります。Apps that require heavy read-only access to content files may benefit from the custom container option, which places files in the container filesystem instead of on the content volume.

次のステップNext steps

最初の Web アプリを作成する。Create your first web app.