JSS Next.jsアプリ用のSitecoreコンテナテンプレート

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Sitecoreコンテナを用いたNext.jsテンプレートは、開発者がJSS Next.jsアプリ向けにフルスタックのSitecore初開発環境を構築するのを支援するために作成されました。

JSS Next.jsアプリ用のSitecoreコンテナテンプレートは、DockerJSS for Next.jsSitecore Content Serializationで構築されています。

!注簡単さのために、このソリューションはソリューションアーキテクチャのSitecore Helix慣例 を実装していません。Sitecoreソリューションの構築を始める前に、モジュラーソリューションアーキテクチャの実装に関する指針としてSitecore HelixSitecore 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\\AppData\Local\mkcert\rootCA.pem

You will need to restart your terminal or VS Code for it to take effect.

!注サンプルアプリケーションでは、開発者が初期化された環境変数を共有できるように、.envファイルをソース管理から除外していません。

.envファイルをソース管理に追加すれば、他の開発者は単にinit.ps1スクリプトを実行するだけで証明書を作成し、ファイルエントリをホストできます。

Sitecoreソリューションやそのデータが機密扱いの場合は、.envファイルをソース管理から除外し、情報を中央で設定する他の手段を提供することを推奨します。

この記事を改善するための提案がある場合は、 お知らせください!