Azure

NuxtアプリケーションをAzureインフラストラクチャにデプロイします。

Azure Static Web Apps

ゼロ設定 ✨
Azure Static Web Appsプロバイダーとの統合は、ゼロ構成で可能です。詳細はこちら.

Azure Static Web Appsは、GitHub Actionsワークフローで継続的にデプロイされるように設計されています。デフォルトでは、Nuxtはこのデプロイ環境を検出して、azureプリセットを有効にします。

ローカルプレビュー

インストールAzure Functions Core Toolsをローカルでテストしたい場合。

デプロイする前に、開発環境を呼び出してプレビューできます。

ターミナル
npx nuxi build --preset=azure
npx @azure/static-web-apps-cli start .output/public --api-location .output/server

設定

Azure Static Web Appsは設定は、staticwebapp.config.jsonファイルを使用して行われます。

Nuxtは、アプリケーションがazureプリセットでビルドされるたびに、この構成ファイルを自動的に生成します。

以下の基準に基づいて、以下のプロパティを追加します。

プロパティ基準デフォルト
platform.apiRuntimeパッケージ構成に応じて、自動的にnode:16またはnode:14に設定されます。node:16
navigationFallback.rewrite常に/api/serverです。/api/server
routesすべてのプリレンダリングされたルートが追加されます。さらに、index.htmlファイルがない場合、互換性のために空のファイルが作成され、また/index.htmlへのリクエストは、/api/serverによって処理されるルートディレクトリにリダイレクトされます。[]

カスタム構成

azure.configオプションを使用して、生成された構成を変更できます。たとえば、Azure FunctionsのNodeランタイムを指定したい場合は、nuxt.config.tsファイルを次のように編集します。

nuxt.config.ts
export default defineNuxtConfig({
  // ...
  nitro: {
    azure: {
      config: {
        // ...
        platform: {
          apiRuntime: 'node:18'
        }
      }
    }
  }
})

カスタムルートは最初に追加され、最初にマッチされます。競合が発生した場合(オブジェクトが同じルートプロパティを持つと判断された場合)、カスタムルートが生成されたルートをオーバーライドします。

GitHub Actions経由でCI/CDからデプロイする

GitHubリポジトリをAzure Static Web Appsにリンクすると、ワークフローファイルがリポジトリに追加されます。

フレームワークを選択するよう求められたら、カスタムを選択し、以下の情報を提供します。

入力
app_location'/'
api_location'.output/server'
output_location'.output/public'

このステップをスキップした場合でも、ワークフローのビルド構成セクションでビルド構成を見つけて更新することができます。

.github/workflows/azure-static-web-apps-<RANDOM_NAME>.yml
###### Repository/Build Configurations ######
app_location: '/'
api_location: '.output/server'
output_location: '.output/public'
###### End of Repository/Build Configurations ######
これで完了です!これでAzure Static Web Appsは、プッシュ時にNitro搭載のアプリケーションを自動的にデプロイします。

runtimeConfigを使用している場合、対応するAzure上の環境変数.

その他のオプション

Nitroドキュメントで、他のAzureデプロイプリセットについて学びましょう。