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コンテナサポートパッケージの標準XP0環境です。このソリューションのすべての変更・追加は、docker-compose.override.ymlに含まれています。
-
JSS Next.jsアプリケーションを初期化するためのスクリプト化された呼び出しjss createとjss deploy。
-
Sitecoreコンテンツシリアライゼーションの設定。
-
Sitecore Content Managementロールに設定とコードをデプロイするためのMSBuildプロジェクトです。詳細は、プロジェクト作成後にディレクトリ内のファイルをsrc\platform.のファイルを確認してください。
!重要Sitecoreは提供されるテンプレートの出力をサポートします。ソリューションを変更したり修正したりすると、それはカスタム実装となり、Sitecoreのサポート範囲で定められた制限の対象となります。
初期化スクリプト
Next.jsプロジェクト用のSitecoreコンテナテンプレートを使って作成されたソリューションには、設定を簡素化するPowerShellスクリプトが含まれています。スクリプトはプロジェクトのルートディレクトリにあるファイル .\init.ps1に定義されています。スクリプトは プロジェクトソリューションを作成する手順の一部としてPowerShellで実行します。
PowerShellの \.init.ps1は以下の作業を行います。
- 例えば、プロジェクトのホスト名のホストファイルエントリを生成します。 myproject.localhost。
- プロジェクトのホスト名 *.myproject.localhostに対して有効かつ信頼できるプライベート署名済みワイルドカード証明書を作成します。
- -InitEnvスイッチでスクリプトを実行する場合、.envファイルにSitecoreインスタンスに必要な環境変数値が入力されます。
ローカル環境では、Sitecoreインスタンスはプライベート署名済みの証明書を使ってインストールされます。.\init.ps1mkcertユーティリティを使って証明書を生成します。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\
You will need to restart your terminal or VS Code for it to take effect.
!注サンプルアプリケーションでは、開発者が初期化された環境変数を共有できるように、.envファイルをソース管理から除外していません。
.envファイルをソース管理に追加すれば、他の開発者は単にinit.ps1スクリプトを実行するだけで証明書を作成し、ファイルエントリをホストできます。
Sitecoreソリューションやそのデータが機密扱いの場合は、.envファイルをソース管理から除外し、情報を中央で設定する他の手段を提供することを推奨します。