デプロイ
Azure
NuxtアプリケーションをAzureインフラストラクチャにデプロイします。
Azure Static Web Apps
設定不要 ✨
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で対応する環境変数を設定することをお勧めします。