JSS Next.jsアプリ用のSitecoreコンテナ テンプレート
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Sitecoreコンテナを使用したNext.jsテンプレートは、開発者がJSS Next.jsアプリのフルスタックのSitecoreファースト開発環境をセットアップできるように作成されました。
JSS Next.jsアプリ用のSitecoreコンテナー テンプレートは、Docker、JSS for Next.js、Sitecore Content Serializationで構築されています。
簡単にするために、このソリューションでは、ソリューション アーキテクチャのSitecore Helix規則 は実装されていません。Sitecoreソリューションの構築を開始する前に、Sitecore HelixとSitecore Helixの例を確認して、モジュラー ソリューション アーキテクチャの実装に関するガイダンスを確認することをお勧めします。
テンプレートには次のものが含まれます。
-
Next.jsレンダリング ホストを使用するSitecore XP0トポロジのdocker-compose環境。
手記含まれているdocker-compose.ymlは、Sitecore Container Support PackageのストックXP0環境です。このソリューションのすべての変更/追加は、docker-compose.override.ymlに含まれています。
-
JSS Next.jsアプリケーションを初期化し、アプリの設定をSitecoreインスタンスにデプロイするスクリプト。
-
Sitecoreコンテンツのシリアル化設定。
-
設定とコードをSitecore Content ManagementロールにデプロイするためのMSBuildプロジェクト。詳細については、プロジェクトを作成した後、ディレクトリsrc\platform内のファイルを調べてください。
Sitecoreは、提供されているテンプレート出力をサポートします。ソリューションを変更または修正すると、そのソリューションはカスタム実装となり、Sitecoreのサポート範囲で定義された制限が適用されます。
初期化スクリプト
Next.jsプロジェクト用のSitecoreコンテナー テンプレートを使用して作成されたソリューションには、ソリューションの設定を簡略化するPowerShellスクリプトが含まれています。スクリプトは、プロジェクトのルートディレクトリにある .\init.ps1ファイルで定義されています。PowerShellでスクリプトを実行する手順は、プロジェクト ソリューションを作成する手順の一部として実行します。
PowerShellの \.init.ps1は、次のタスクを実行します。
-
プロジェクトのホスト名のhostsファイルエントリを生成します(例: myproject.localhost)。
-
プロジェクトのホスト名 *.myproject.localhostに対して有効または信頼できるプライベート署名付きワイルドカード証明書を作成します。
-
-InitEnvスイッチを使用してスクリプトを実行すると、Sitecoreインスタンスに必要な環境変数の値が .envファイルに入力されます。
ローカル環境では、Sitecoreインスタンスはプライベート署名された証明書を使用してインストールされます。 .\init.ps1は、mkcertユーティリティを使用して証明書を生成します。Node.jsは、ルートCAが不明なため、これらの証明書を拒否します。
Node.jsでmkcertを初めて使用する場合は、HTTPSエラーを防ぐためにNODE_EXTRA_CA_CERTS環境変数を手動で設定する必要があります。
.\init.ps1スクリプトでは、ユーザー環境変数またはシステム環境変数でNODE_EXTRA_CA_CERTS環境変数を設定する方法について説明します。
To avoid HTTPS errors, set the NODE_EXTRA_CA_CERTS environment variable using the following command:
setx NODE_EXTRA_CA_CERTS C:\Users\<username>\AppData\Local\mkcert\rootCA.pem
You will need to restart your terminal or VS Code for it to take effect.
サンプル アプリケーションでは、開発者が初期化された環境変数を共有できるように、ソース管理から .envファイルを除外しません。
.envファイルをソース管理に追加すると、他の開発者はinit.ps1スクリプトを実行するだけで、証明書とhostsファイル エントリを準備できます。
Sitecoreソリューションやそのデータが機密である場合は、.envファイルをソース管理から除外し、ソース管理内の情報を一元的に設定するための他の手段を提供することをお勧めします。