Azure App Service でステージング環境を設定するSet up staging environments in Azure App Service

注意

このハウツー ガイドでは、新しいプレビューの管理ページを使用してスロットを管理する方法を説明します。This how-to guide shows how to manage slots using a new preview management page. 既存の管理ページを使用するお客様は、前と同じ既存のスロット管理のページの使用を続行できます。Customers used to the existing management page can continue to use the existing slot management page as before.

使用している App Service プラン レベルが StandardPremiumIsolated のいずれかである場合は、Web アプリ、Linux 上の Web アプリ、モバイル バック エンド、API アプリを App Service にデプロイする際、既定の運用スロットではなく、個別のデプロイ スロットにデプロイすることができます。When you deploy your web app, web app on Linux, mobile back end, and API app to App Service, you can deploy to a separate deployment slot instead of the default production slot when running in the Standard, Premium, or Isolated App Service plan tier. デプロイ スロットは、実際には固有のホスト名を持つライブ アプリです。Deployment slots are actually live apps with their own hostnames. アプリのコンテンツと構成の各要素は、(運用スロットを含む) 2 つのデプロイ スロットの間でスワップすることができます。App content and configurations elements can be swapped between two deployment slots, including the production slot. 非運用スロットにアプリケーションをデプロイすることには、次のメリットがあります。Deploying your application to a non-production slot has the following benefits:

  • ステージング デプロイ スロットでアプリの変更を検証した後に、運用スロットにスワップできます。You can validate app changes in a staging deployment slot before swapping it with the production slot.
  • スロットにアプリをデプロイした後に運用サイトにスワップすると、運用サイトへのスワップ前にスロットのすべてのインスタンスが準備されます。Deploying an app to a slot first and swapping it into production makes sure that all instances of the slot are warmed up before being swapped into production. これにより、アプリをデプロイする際のダウンタイムがなくなります。This eliminates downtime when you deploy your app. トラフィックのリダイレクトはシームレスであるため、スワップ操作によって破棄される要求はありません。The traffic redirection is seamless, and no requests are dropped because of swap operations. このワークフロー全体は、スワップ前の検証が必要ない場合、自動スワップを構成することで自動化できます。This entire workflow can be automated by configuring Auto Swap when pre-swap validation isn't needed.
  • スワップ後も、以前のステージング アプリ スロットに元の運用アプリが残っているため、After a swap, the slot with previously staged app now has the previous production app. 運用スロットにスワップした変更が想定どおりでない場合は、適切な動作が確認されている元のサイトにすぐに戻すことができます。If the changes swapped into the production slot aren't as you expect, you can perform the same swap immediately to get your "last known good site" back.

サポートされるデプロイ スロット数は、App Service プラン レベルごとに異なります。Each App Service plan tier supports a different number of deployment slots. 使用しているアプリのレベルでサポートされるスロット数を確認するには、「App Service の制限」をご覧ください。To find out the number of slots your app's tier supports, see App Service Limits. アプリを別のレベルにスケーリングするには、アプリが既に使用しているスロット数がターゲット レベルによってサポートされている必要があります。To scale your app to a different tier, the target tier must support the number of slots your app already uses. たとえば、Standard レベルでは 5 つのデプロイ スロットのみがサポートされるので、アプリに 5 つを超えるスロットがある場合は Standard レベルにスケール ダウンできません。For example, if your app has more than five slots, you can't scale it down to Standard tier, because Standard tier only supports five deployment slots.

スロットの追加Add slot

複数のデプロイ スロットを有効にするには、アプリが StandardPremiumIsolated のいずれかのレベルで実行されている必要があります。The app must be running in the Standard, Premium, or Isolated tier in order for you to enable multiple deployment slots.

  1. Azure Portal でアプリのリソース ページを開きます。In the Azure portal, open your app's resource page.

  2. 左側のナビゲーションで、 [デプロイ スロット (プレビュー)] オプションを選択し、 [スロットの追加] をクリックします。In the left navigation, choose the Deployment slots (Preview) option, then click Add Slot.

    新しいデプロイ スロットの追加

    注意

    アプリがまだ StandardPremiumIsolated のいずれのレベルでもない場合は、ステージングされた発行を有効にするためのサポート対象のレベルを示すメッセージが表示されます。If the app isn't already in the Standard, Premium, or Isolated tier, you receive a message indicating the supported tiers for enabling staged publishing. その場合は、操作を継続する前に、 [アップグレード] を選択してアプリの [スケール] タブに移動できます。At this point, you have the option to select Upgrade and navigate to the Scale tab of your app before continuing.

  3. [スロットの追加] ダイアログで、スロット名を設定し、別の既存のデプロイ スロットからアプリ構成を複製するかどうかを選択します。In the Add a slot dialog, give the slot a name, and select whether to clone app configuration from another existing deployment slot. [追加] をクリックして続行します。Click Add to continue.

    構成元

    既存のスロットから構成を複製できます。You can clone configuration from any existing slot. 複製できる設定には、アプリの設定、接続文字列、言語フレームワークのバージョン、Web ソケット、HTTP のバージョン、プラットフォームのビット数などがあります。Settings that can be cloned include app settings, connection strings, language framework versions, web sockets, HTTP version, and platform bitness.

  4. スロットを追加した後、 [閉じる] をクリックしてダイアログを閉じます。After the slot is added, click Close to close the dialog. 新しいスロットが [デプロイ スロット (プレビュー)] ページに表示されます。The new slot is now shown in the Deployment slots (Preview) page. 既定では、新しいスロットの [トラフィック %] は 0 に設定され、顧客のトラフィックはすべて運用スロットにルーティングされます。By default, the Traffic % is set to 0 for the new slot, with all customer traffic routed to the production slot.

  5. 新しいデプロイ スロットをクリックして、そのスロットのリソース ページを開きます。Click the new deployment slot to open that slot's resource page.

    デプロイ スロットのタイトル

    ステージング スロットには、他の App Service アプリと同様に管理ページがあります。The staging slot has a management page just like any other App Service app. スロットの構成を変更することができます。You can change the slot's configuration. デプロイ スロットが表示されていることを通知するためにスロットの名前がページの上部に表示されます。The name of the slot is shown at the top of the page to remind you that you're viewing the deployment slot.

  6. スロットのリソース ページで、アプリの URL をクリックします。Click the app URL in the slot's resource page. デプロイ スロットは独自のホスト名を持ち、ライブ アプリでもあります。The deployment slot has its own hostname and is also a live app. デプロイ スロットへのパブリック アクセスを制限するには、「Azure App Service の IP 制限」をご覧ください。To limit public access to the deployment slot, see Azure App Service IP Restrictions.

別のスロットから設定を複製した場合でも、新しいデプロイ スロットには内容がありません。The new deployment slot has no content, even if you clone the settings from a different slot. たとえば、 Git を使用してこのスロットに発行することができます。For example, you can publish to this slot with git. スロットには、異なるリポジトリ分岐、または異なるリポジトリからデプロイできます。You can deploy to the slot from a different repository branch or a different repository.

スワップされる設定Which settings are swapped?

別のデプロイ スロットから構成を複製する場合、複製された構成を編集することができます。When you clone configuration from another deployment slot, the cloned configuration is editable. なお、スワップ先のコンテンツに反映される構成要素 (非スロット固有) もあれば、スワップ後にも同じスロットに維持される構成要素 (スロット固有) もあります。Furthermore, some configuration elements follow the content across a swap (not slot specific) while other configuration elements stay in the same slot after a swap (slot specific). 次の一覧では、スロットのスワップ時に変更される設定を示します。The following lists show the settings that change when you swap slots.

スワップされる設定:Settings that are swapped:

  • 一般設定 - フレームワーク バージョン、32/64 ビット、Web ソケットなどGeneral settings - such as framework version, 32/64-bit, Web sockets
  • アプリ設定 (スロット固有として構成可能)App settings (can be configured to stick to a slot)
  • 接続文字列 (スロット固有として構成可能)Connection strings (can be configured to stick to a slot)
  • ハンドラー マッピングHandler mappings
  • 監視と診断の設定Monitoring and diagnostic settings
  • パブリック証明書Public certificates
  • Web ジョブ コンテンツWebJobs content
  • ハイブリッド接続 *Hybrid connections *
  • VNet 統合 *VNet integration *
  • サービス エンドポイント *Service Endpoints *
  • Azure CDN *Azure CDN *

* でマークされた機能は、スロットに固定される予定です。Features marked with a * are planned to be made sticky to the slot.

スワップされない設定:Settings that aren't swapped:

  • 発行エンドポイントPublishing endpoints
  • カスタム ドメイン名Custom Domain Names
  • プライベート証明書と SSL のバインドPrivate certificates and SSL bindings
  • スケールの設定Scale settings
  • Web ジョブ スケジューラWebJobs schedulers
  • IP 制限IP restrictions
  • 常時接続Always On
  • プロトコル設定 (HTTPS、TLS バージョン、クライアント証明書)Protocol Settings (HTTPS, TLS version, client certificates)
  • 診断ログの設定Diagnostic log settings
  • CORSCORS

アプリ設定または接続文字列を特定のスロット固有として (スワップされないように) 構成するには、そのスロットの [アプリケーションの設定] ページに移動し、スロット固有にする構成要素の [スロット設定] ボックスをオンにします。To configure an app setting or connection string to stick to a specific slot (not swapped), navigate to the Application settings page for that slot, then select the Slot Setting box for the configuration elements that should stick to the slot. 構成要素をスロット固有としてマークすると、スワップできないことが App Service に通知されます。Marking a configuration element as slot specific tells App Service that it's not swappable.

スロットの設定

2 つのスロットをスワップするSwap two slots

アプリの [デプロイ スロット (プレビュー)] ページで、デプロイ スロットをスワップできます。You can swap deployment slots in your app's Deployment slots (Preview) page.

[概要] ページや [デプロイ スロット] ページでスロットをスワップすることもできますが、現在は古いエクスペリエンスが提供されます。You can also swap slots from the Overview and Deployment slots pages, but currently it gives you the old experience. このガイドでは、 [デプロイ スロット (プレビュー)] ページの新しいユーザー インターフェイスを使用する方法を示します。This guide shows us how to use the new user interface in the Deployment slots (Preview) page.

重要

アプリをデプロイ スロットから運用環境にスワップする前に、すべての設定が、スワップ ターゲットへと反映させたいとおりに構成されていることを確認してください。Before you swap an app from a deployment slot into production, make sure that all settings are configured exactly as you want to have it in the swap target.

デプロイ スロットをスワップするには、次の手順のようにします。To swap deployment slots, follow these steps:

  1. アプリの [デプロイ スロット (プレビュー)] ページに移動し、 [スワップ] をクリックします。Navigate to your app's Deployment slots (Preview) page and click Swap.

    [スワップ] ボタン

    [スワップ] ダイアログに、選択したソース スロットとターゲット スロットの変更される設定が表示されます。The Swap dialog shows settings in the selected source and target slots that will be changed.

  2. 目的の [ソース] および [ターゲット] スロットを選択します。Select the desired Source and Target slots. 通常、ターゲットは運用スロットになります。Usually, the target is the production slot. また、 [ソースの変更] タブと [ターゲットの変更] タブをクリックして、構成の変更が予想されることを確認します。Also, click the Source Changes and Target Changes tabs and verify that the configuration changes are expected. 完了したら、 [スワップ] をクリックしてすぐにスロットをスワップすることができます。When finished, you can swap the slots immediately by clicking Swap.

    完全なスワップ

    スワップを実際に行う前に、新しい設定でのターゲット スロットの動作を確認するには、 [スワップ] をクリックしないで、「プレビューでのスワップ」の指示に従います。To see how your target slot would run with the new settings before the swap actually happens, don't click Swap, but follow the instructions in Swap with preview.

  3. 完了したら、 [閉じる] をクリックしてダイアログを閉じます。When you're finished, close the dialog by clicking Close.

プレビューでのスワップ (複数フェーズのスワップ)Swap with preview (multi-phase swap)

注意

プレビューでのスワップは、Linux 上の Web アプリではサポートされていません。Swap with preview isn't supported in web apps on Linux.

ターゲット スロットとして運用環境にスワップする前に、スワップした設定でのアプリの実行を検証します。Before swapping into production as the target slot, validate the app runs with the swapped settings before the swap happens. ソース スロットはスワップの完了前にウォームアップされ、これはミッション クリティカルなアプリケーションにも適しています。The source slot is also warmed up before the swap completion, which is also desirable for mission-critical applications.

プレビューでスワップを開始すると、App Service では次のことが行われます。When you perform a swap with preview, App Service does the following when you start the swap:

  • スロット上の既存のワークロード (運用など) が影響を受けないように、ターゲット スロットは変更されません。Keeps the target slot unchanged so existing workload on that slot (such as production) isn't affected.
  • スロット固有の接続文字列やアプリの設定など、ターゲット スロットの構成要素がソース スロットに適用されます。Applies the configuration elements of the target slot to the source slot, including the slot-specific connection strings and app settings.
  • これらの構成要素を使って、ソース スロットのワーカー プロセスが再起動されます。Restarts the worker processes on the source slot using these configuration elements. ソース スロットを参照し、変更した構成でのアプリの実行を確認できます。You can browse the source slot and see the app run with the configuration changes.

別の手順でスワップを完了した場合、App Service により、ウォームアップされたソース スロットがターゲット スロットに移動され、ターゲット スロットがソース スロットに移動されます。If you complete the swap in a separate step, App Service moves the warmed-up source slot into the target slot, and the target slot into the source slot. スワップをキャンセルすると、ソース スロットの構成要素がソース スロットに再び適用されます。If you cancel the swap, App Service reapplies the configuration elements of the source slot to the source slot.

プレビューでスワップを行うには、次の手順のようにします。To swap with preview, follow these steps.

  1. デプロイ スロットをスワップする」の手順に従いますが、 [プレビューでスワップを実行] を選択します。follow the steps in Swap deployment slots but select Perform swap with preview.

    プレビューでのスワップ

    ダイアログに、フェーズ 1 でのソース スロットの構成の変更方法と、フェーズ 2 でのソース スロットとターゲット スロットの変更方法が表示されます。The dialog shows you how the configuration in the source slot changes in phase 1, and how the source and target slot change in phase 2.

  2. スワップを開始する準備ができたら、 [スワップの開始] をクリックします。When ready to start the swap, click Start Swap.

    フェーズ 1 が完了すると、ダイアログで通知されます。When phase 1 completes, you're notified in the dialog. https://<app_name>-<source-slot-name>.azurewebsites.net に移動して、ソース スロットでのスワップをプレビューします。Preview the swap in the source slot by navigating to https://<app_name>-<source-slot-name>.azurewebsites.net.

  3. 保留中のスワップを完了する準備ができたら、 [スワップ アクション][スワップの完了] を選択し、 [スワップの完了] をクリックします。When ready to complete the pending swap, select Complete Swap in Swap action and click Complete Swap.

    保留中のスワップを取り消すには、代わりに [スワップの取り消し] を選択して、 [スワップの取り消し] をクリックします。To cancel a pending swap, select Cancel Swap instead and click Cancel Swap.

  4. 完了したら、 [閉じる] をクリックしてダイアログを閉じます。When you're finished, close the dialog by clicking Close.

複数フェーズのスワップを自動化するには、PowerShell を使用した自動化についてのページをご覧ください。To automate a multi-phase swap, see Automate with PowerShell.

スワップをロールバックするRoll back swap

スロットのスワップ後にターゲット スロット (運用スロットなど) でエラーが発生する場合は、同じ 2 つのスロットをすぐにスワップして、スロットをスワップ前の状態に復元します。If any errors occur in the target slot (for example, the production slot) after a slot swap, restore the slots to their pre-swap states by swapping the same two slots immediately.

自動スワップの構成Configure Auto Swap

注意

自動スワップは、Linux 上の Web アプリではサポートされていません。Auto Swap isn't supported in web apps on Linux.

自動スワップを使うと、アプリのエンド ユーザーにコールド スタートやダウンタイムを強制することなく、アプリを連続的にデプロイできる、効率的な DevOps シナリオを実現できます。Auto Swap streamlines DevOps scenarios where you want to deploy your app continuously with zero cold start and zero downtime for end customers of the app. スロットを運用環境に自動スワップするよう設定すると、コードの変更をそのスロットにプッシュするたびに、ソース スロットでウォームアップされた後、App Service によってアプリが運用環境に自動的にスワップされます。When a slot autoswaps into production, every time you push your code changes to that slot, App Service automatically swaps the app into production after it's warmed up in the source slot.

注意

運用スロットの自動スワップを構成する前に、まず非運用環境のターゲット スロットで自動スワップをテストしてみてください。Before configuring Auto Swap for the production slot, consider testing Auto Swap on a non-production target slot first.

自動スワップを構成するには、次の手順のようにします。To configure Auto Swap, follow these steps:

  1. アプリのリソース ページに移動します。Navigate to your app's resource page. [デプロイ スロット (プレビュー)] > <目的のソース スロット> > [アプリケーション設定] の順に選択します。Select Deployment slots (Preview) > <desired source slot> > Application settings.

  2. [自動スワップ][オン] を選択し、 [自動スワップ スロット] で目的のターゲット スロットを選択して、コマンド バーの [保存] をクリックします。In Auto Swap, select On, then select the desired target slot in Auto Swap Slot, and click Save in the command bar.

  3. ソース スロットへのコードのプッシュを実行します。Execute a code push to the source slot. しばらくすると自動スワップが実行され、更新がターゲット スロットの URL に反映されます。Auto Swap happens after a short time and the update is reflected at your target slot's URL.

カスタム ウォームアップCustom warm-up

自動スワップを使用するとき、一部のアプリではスワップ前にカスタム ウォームアップ アクションが必要な場合があります。When using Auto-Swap, some apps may require custom warm-up actions before the swap. web.config の applicationInitialization 構成要素を使用して、実行されるカスタム初期化アクションを指定できます。The applicationInitialization configuration element in web.config lets you specify custom initialization actions to be performed. スワップ操作では、このカスタム ウォームアップが完了するまで待ってから、ターゲット スロットとのスワップが行われます。The swap operation waits for this custom warm-up to complete before swapping with the target slot. サンプルの web.config フラグメントを次に示します。Here is a sample web.config fragment.

<system.webServer>
    <applicationInitialization>
        <add initializationPage="/" hostName="[app hostname]" />
        <add initializationPage="/Home/About" hostName="[app hostname]" />
    </applicationInitialization>
</system.webServer>

applicationInitialization 要素のカスタマイズの詳細については、「Most common deployment slot swap failures and how to fix them (最も一般的なデプロイ スロットのスワップ エラーとその修正方法)」を参照してください。For more information on customizing the applicationInitialization element, see Most common deployment slot swap failures and how to fix them.

次の 1 つまたは複数のアプリ設定でウォームアップ動作をカスタマイズすることもできます。You can also customize the warm-up behavior with one or more of the following app settings:

  • WEBSITE_SWAP_WARMUP_PING_PATH:サイトをウォームアップするための ping へのパス。WEBSITE_SWAP_WARMUP_PING_PATH: The path to ping to warmup your site. このアプリ設定を追加するには、値としてスラッシュで始まるカスタム パスを指定します。Add this app setting by specifying a custom path that begins with a slash as the value. たとえば、「 /statuscheck 」のように入力します。For example, /statuscheck. 既定値は / です。The default value is /.
  • WEBSITE_SWAP_WARMUP_PING_STATUSES:ウォーム アップ操作の有効な HTTP 応答コード。WEBSITE_SWAP_WARMUP_PING_STATUSES: Valid HTTP response codes for the warm-up operation. HTTP コードのコンマ区切りの一覧で、このアプリ設定を追加します。Add this app setting with a comma-separated list of HTTP codes. たとえば、「200,202」のように指定します。For example: 200,202 . 返された状態コードが一覧にない場合、ウォーム アップおよびスワップ操作が停止します。If the returned status code is not in the list, the warmup and swap operations are stopped. 既定で、すべての応答コードは有効です。By default, all response codes are valid.

スワップを監視するMonitor swap

スワップ操作が完了するまで長い時間がかかる場合、アクティビティ ログでスワップ操作に関する情報を取得できます。If the swap operation takes a long time to complete, you can get information on the swap operation in the activity log.

ポータルのアプリのリソース ページで、左側のナビゲーションの [アクティビティ ログ] を選択します。In your app's resource page in the portal, in the left-hand navigation, select Activity log.

スワップ操作がログ クエリに Swap Web App Slots として表示されます。A swap operation appears in the log query as Swap Web App Slots. これを展開し、副操作やエラーの 1 つを選択して詳細を表示できます。You can expand it and select one of the suboperations or errors to see the details.

トラフィックをルーティングするRoute traffic

既定では、アプリの運用環境の URL (http://<app_name>.azurewebsites.net) に対するすべてのクライアント要求は、運用スロットにルーティングされます。By default, all client requests to the app's production URL (http://<app_name>.azurewebsites.net) are routed to the production slot. トラフィックの一部を、別のスロットにルーティングできます。You can route a portion of the traffic to another slot. この機能は、新しい更新についてのユーザーのフィードバックが必要であっても、運用環境にリリースできる状態ではない場合に便利です。This feature is useful if you need user feedback for a new update, but you're not ready to release it to production.

運用トラフィックを自動的にルーティングするRoute production traffic automatically

運用トラフィックを自動的にルーティングするには、次の手順のようにします。To route production traffic automatically, follow these steps:

  1. アプリのリソース ページに移動し、 [デプロイ スロット (プレビュー)] を選択します。Navigate to your app's resource page and select Deployment slots (Preview).

  2. ルーティング先のスロットの [トラフィック %] 列で、ルーティングするトラフィックの合計量を表す割合 (0 ~ 100) を指定します。In the Traffic % column of the slot you want to route to, specify a percentage (between 0 and 100) to represent the amount of total traffic you want to route. [Save] をクリックします。Click Save.

設定を保存すると、指定した割合のクライアントが、非運用スロットにランダムにルーティングされます。Once the setting is saved, the specified percentage of clients is randomly routed to the non-production slot.

一度特定のスロットに対して自動的にルーティングされたクライアントは、そのクライアント セッションの有効期間中、そのスロットに "固定" されます。Once a client is automatically routed to a specific slot, it's "pinned" to that slot for the life of that client session. クライアントのブラウザーで、HTTP ヘッダー内の x-ms-routing-name Cookie を調べることにより、セッションが固定されているスロットを確認できます。On the client browser, you can see which slot your session is pinned to by looking at the x-ms-routing-name cookie in your HTTP headers. "ステージング" スロットにルーティングされる要求には、x-ms-routing-name=staging という Cookie が設定されています。A request that's routed to the "staging" slot has the cookie x-ms-routing-name=staging. 運用スロットにルーティングされる要求には、x-ms-routing-name=self という Cookie が設定されています。A request that's routed to the production slot has the cookie x-ms-routing-name=self.

運用トラフィックを手動でルーティングするRoute production traffic manually

App Service では、トラフィックの自動ルーティングだけでなく、特定のスロットに要求をルーティングすることもできます。In addition to automatic traffic routing, App Service can route requests to a specific slot. この方法は、ベータ版アプリへの参加をユーザーが自由に選択または拒否できるようにしたい場合に有効です。This is useful when you want your users to be able to opt-into or opt-out of your beta app. 運用トラフィックを手動でルーティングするには、x-ms-routing-name クエリ パラメーターを使用します。To route production traffic manually, you use the x-ms-routing-name query parameter.

ベータ版アプリへの参加をユーザーが拒否できるようにする方法としては、たとえば以下のようなリンクを Web ページに設置することが考えられます。To let users opt out of your beta app, for example, you can put this link in your web page:

<a href="<webappname>.azurewebsites.net/?x-ms-routing-name=self">Go back to production app</a>

文字列 x-ms-routing-name=self に指定されているのは運用スロットです。The string x-ms-routing-name=self specifies the production slot. このリンクにアクセスしたクライアント ブラウザーは運用スロットにリダイレクトされます。加えて、それ以降の要求には、セッションを運用スロットに固定する x-ms-routing-name=self Cookie が格納されます。Once the client browser accesses the link, not only is it redirected to the production slot, but every subsequent request has the x-ms-routing-name=self cookie that pins the session to the production slot.

ベータ版アプリへの参加をユーザーが許可できるようにするには、同じクエリ パラメーターに、非運用スロットの名前を設定します。以下に示したのはその例です。To let users opt in to your beta app, set the same query parameter to the name of the non-production slot, for example:

<webappname>.azurewebsites.net/?x-ms-routing-name=staging

既定では、新しいスロットには、0% のルーティング規則がグレーで表示されます。By default, new slots are given a routing rule of 0%, shown in grey. この値を明示的に 0% に設定 (黒いテキストで表示) すると、ユーザーは x-ms-routing-name クエリ パラメーターを使用して手動でステージング スロットにアクセスできますが、ルーティング率が 0 に設定されているため、スロットに自動的にルーティングされません。By explicitly setting this value to 0% (shown in black text), your users can access the staging slot manually by using the x-ms-routing-name query parameter, but they will not be routed to the slot automatically since the routing percentage is set to 0. これは、内部チームにスロットでの変更のテストを許可する一方で、ステージング スロットをパブリックから "非表示" にできる高度なシナリオです。This is an advanced scenario where you can "hide" your staging slot from the public while allowing internal teams to test changes on the slot.

スロットを削除するDelete slot

アプリのリソース ページに移動します。Navigate to your app's resource page. [デプロイ スロット (プレビュー)] > <削除するスロット> > [概要] の順に選択します。Select Deployment slots (Preview) > <slot to delete> > Overview. コマンド バーの [削除] をクリックします。Click Delete in the command bar.

デプロイ スロットの削除

PowerShell で自動化するAutomate with PowerShell

注意

この記事は、新しい Azure PowerShell Az モジュールを使用するために更新されました。This article has been updated to use the new Azure PowerShell Az module. AzureRM モジュールはまだ使用でき、少なくとも 2020 年 12 月までは引き続きバグ修正が行われます。You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Az モジュールと AzureRM の互換性の詳細については、「Introducing the new Azure PowerShell Az module (新しい Azure PowerShell Az モジュールの概要)」を参照してください。To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Az モジュールのインストール手順については、Azure PowerShell のインストールを参照してください。For Az module installation instructions, see Install Azure PowerShell.

Azure PowerShell は、Windows PowerShell から Azure を管理するためのコマンドレットを提供するモジュールです (Azure App Service のデプロイ スロットを管理するためのサポートなど)。Azure PowerShell is a module that provides cmdlets to manage Azure through Windows PowerShell, including support for managing deployment slots in Azure App Service.

Azure PowerShell のインストールと構成、Azure サブスクリプションを使用した Azure PowerShell の認証については、「 Microsoft Azure PowerShell のインストールおよび構成方法」を参照してください。For information on installing and configuring Azure PowerShell, and on authenticating Azure PowerShell with your Azure subscription, see How to install and configure Microsoft Azure PowerShell.


Web アプリの作成Create web app

New-AzWebApp -ResourceGroupName [resource group name] -Name [app name] -Location [location] -AppServicePlan [app service plan name]

スロットを作成するCreate slot

New-AzWebAppSlot -ResourceGroupName [resource group name] -Name [app name] -Slot [deployment slot name] -AppServicePlan [app service plan name]

プレビューでのスワップ (複数フェーズのスワップ) を開始し、送信先スロットの構成をソース スロットに適用するInitiate swap with preview (multi-phase swap) and apply destination slot configuration to source slot

$ParametersObject = @{targetSlot  = "[slot name – e.g. “production”]"}
Invoke-AzResourceAction -ResourceGroupName [resource group name] -ResourceType Microsoft.Web/sites/slots -ResourceName [app name]/[slot name] -Action applySlotConfig -Parameters $ParametersObject -ApiVersion 2015-07-01

保留中のスワップ (レビューでのスワップ) を取り消し、ソースのスロットの構成を復元するCancel pending swap (swap with review) and restore source slot configuration

Invoke-AzResourceAction -ResourceGroupName [resource group name] -ResourceType Microsoft.Web/sites/slots -ResourceName [app name]/[slot name] -Action resetSlotConfig -ApiVersion 2015-07-01

デプロイ スロットをスワップするSwap deployment slots

$ParametersObject = @{targetSlot  = "[slot name – e.g. “production”]"}
Invoke-AzResourceAction -ResourceGroupName [resource group name] -ResourceType Microsoft.Web/sites/slots -ResourceName [app name]/[slot name] -Action slotsswap -Parameters $ParametersObject -ApiVersion 2015-07-01

アクティビティ ログでスワップ イベントを監視するMonitor swap events in the activity Log

Get-AzLog -ResourceGroup [resource group name] -StartTime 2018-03-07 -Caller SlotSwapJobProcessor  

スロットを削除するDelete slot

Remove-AzResource -ResourceGroupName [resource group name] -ResourceType Microsoft.Web/sites/slots –Name [app name]/[slot name] -ApiVersion 2015-07-01

CLI で自動化するAutomate with CLI

デプロイ スロット用の Azure CLI コマンドについては、「az webapp deployment slot」をご覧ください。For Azure CLI commands for deployment slots, see az webapp deployment slot.

次の手順Next steps

非運用スロットへのアクセスをブロックするBlock access to non-production slots