この記事では、Azure DevOps Services からの Azure Web App Service のデプロイに関連するいくつかの一般的な問題を示し、これらの問題を解決またはデバッグする手順について説明します。
Note
Status の履歴を確認して、Azure DevOps Services の停止が原因で影響を受ける可能性があるかどうかを確認します。
一般的な問題と解決方法
エラー: "タスクで指定されたパターンでパッケージが見つかりません"
タスクに示されているパッケージが、ビルドまたは前のステージで成果物として発行され、現在のジョブでダウンロードされていることを確認します。
エラー: "PUBLISH using zip deploy option is not supported for MSBuild package type" (ZIP を使用した発行のデプロイ オプションは MSBuild パッケージの種類ではサポートされていません)
MSBuild タスクを使用して (既定の引数で) 作成された Web パッケージは、Web 配置でのみ正しくデプロイできる入れ子になったフォルダー構造を持っています。 これらのパッケージをデプロイするために publish-to-zip デプロイ オプションを使うことはできません。 パッケージ構造を変換するには、こちらの手順を実行してください。
5xx エラー コードでタスクが失敗する
Azure サービスの状態を確認します。
また、 Azure DevOps の状態ページ を確認して、進行中の停止が問題に関連しているかどうかを確認します。
リリースが長時間ハングした後、失敗した場合、"503 サービスを使用できません" というエラーが発生する、またはデプロイ ログのデプロイ履歴が更新されない
これらの問題は、App Service プランに十分な容量がない場合に発生する可能性があります。 これらの問題を解決するには、App Service インスタンスをスケールアップして使用可能な CPU、RAM、ディスク領域を増やすか、別の App Service プランを試すことができます。 また、Azure Web Apps 側からKudu ログを確認します。
展開中にネットワークに到達できないというエラー (例: "リモート コンピューターに接続できませんでした ('<AppName>.scm.azurewebsites.net')")
ファイアウォール、プロキシ、アクセス許可については、次の記事を参照してください (すべてのプラットフォームに適用されます)。 これらの記事では、Microsoft でホストする場合とセルフホステッド エージェントのシナリオに関するリファレンスを提供します。
タスクが失敗し、"Azure のアクセス トークンをフェッチできませんでした。 使用されているサービス プリンシパルが有効で、有効期限が切れていないことを確認してください" でのタスクの失敗のトラブルシューティング
Note
Azure サービス接続に関する問題がデプロイに影響する場合は、他のシナリオもあります。
使用されているサービス プリンシパルが有効であることと、アプリの登録に存在することを確認してください。 詳細については、 Azure portal を使用して Azure ロールを割り当てる方法に関するページを参照してください。
App Service または Web アプリのデプロイ タスクの SSL エラー
App Service で証明書を使用するには、信頼された証明機関によって署名されている必要があります。 このエラーを解決するには SSL エラーに関するページを参照してください。
App Service デプロイ タスクの Web 配置エラー
Web 配置を使用してアプリをデプロイしている場合、一部のエラー シナリオでは、Web Deploy によってログにエラー コードが表示されます。 Web 配置エラーのトラブルシューティングについては、「Web 配置のエラー コード」を参照してください。
Windows 上の Web アプリに .NET アプリを展開しようとしたときにエラー "ERROR_FILE_IN_USE"
このエラーを解決するには、タスクで [ロックされたファイルの名前を変更する] および [アプリをオフラインにする] オプションが有効になっていることを確かめます。 ダウンタイムをゼロにする場合は、 スロット スワップを使用します。
Windows での Web アプリのデプロイは成功したが、アプリが動作していない
この問題は、 web.config ファイルがアプリに存在しないために発生する可能性があります。 web.config ファイルを追加するには、次の手順従います。
App Service Environment (ASE) での Web アプリのデプロイが機能しない
次の手順に従って 正しくデプロイしていることを確認します。
AzureRmWebAppDeployment タスクを使用して Function App をデプロイできませんでした
AzureFunctionApp@1 - Azure Functions v1 タスクの使用を検討してください。
Azure Web アプリへのアプリのデプロイに関するガイダンス
さまざまな言語のアプリを Azure Web App にデプロイする方法については、次のチュートリアルを参照してください。
- CI/CD を使用して Python Web アプリを Linux 上の Azure App Service にデプロイする
- PHP アプリのビルドとテスト
- Java Web アプリをビルドしてデプロイする
- クイック スタート - Azure Pipelines を使用してNode.js パッケージをビルドして発行する
推奨されるドキュメント
- App Service のデプロイ タスクのトラブルシューティング
- AzureWebApp@1 - Azure Web App v1 タスク
- AzureWebAppContainer@1 - Azure Web App for Containers v1 タスク
- Azure Pipelines を使用して App Service にデプロイする
- Azure Web App for Containers にデプロイする