チュートリアル: 開始テンプレートを使用する

Current version: 10.1

Sitecore は、ASP.NET および Sitecore コンテナーを使用した Sitecore ヘッドレス開発を試したい Sitecore 開発者向けに開始テンプレートを提供します。このテンプレートを使用して、開発を始めたり、新しい顧客プロジェクトを開始したりすることができます。

テンプレートは、ソリューション アーキテクチャ向けの Sitecore Helix 規則を実装していません。Sitecore ソリューションの構築を始める際は、Sitecore Helix および Sitecore Helix の例で、モジュラー ソリューション アーキテクチャの実装に関するガイダンスを確認することをお勧めします。

テンプレートには次のものが含まれます。

  • ASP.NET レンダリング ホストを使用した Sitecore XP0 トポロジの Docker 環境。

    注記

    これに含まれている docker-compose.yml ファイルは、Sitecore コンテナー サポート パッケージからの XP0 環境のテンプレートです。このソリューションのすべての変更は、docker-compose.override.yml ファイルに含まれます。

  • 1 ページのサンプル サイト用のシリアル化されたアイテム。詳細については、src\Items.module.config ファイルを参照してください。

  • Sitecore Content Management ロールに設定とコードをデプロイするための Platform と名前が付けられた MSBuild プロジェクト。詳細については、src\platform フォルダーを参照してください。

  • ASP.NET レンダリング ホスト用の RenderingHost と名前が付けられた MSBuild プロジェクト。詳細については、src\rendering フォルダーを参照してください。

開始テンプレートからソリューションを作成するには、次の手順を実行する必要があります。

前提条件のインストール

テンプレートをインストールしてソリューションを作成する前に、次のソフトウェア コンポーネントがワークステーションにインストールされていることを確認する必要があります。

システム要件の詳細については、Sitecore コンテナーのドキュメントを参照してください。

テンプレートのインストール

テンプレートをダウンロードして、ファイル システムにインストールします。その後、テンプレートに基づいてソリューションを作成できます。

テンプレートをインストールするには:

  1. 管理者権限で PowerShell を開きます。

  2. 次のコマンドを実行します。

    RequestResponse
    dotnet new -i Sitecore.DevEx.Templates --nuget-source https://sitecore.myget.org/F/sc-packages/api/v3/index.json

dotnet ツールは、インストールが成功したことを示す明らかなフィードバックを表示しません。ただし、インストール コマンドは、インストールされたすべてのテンプレートを一覧表示して終了します。インストールが成功した場合、一覧には sitecore.aspnet.gettingstarted が含まれます。

MyProject ソリューションの作成

ソリューションには任意の名前を付けることができますが、この例ではソリューションに MyProject と名前を付けます。

MyProject ソリューションを作成するには:

  1. 管理者権限で PowerShell を開きます。

  2. ポート 443 でインターネット インフォメーション サーバーが実行されているかどうかを確認します。

    RequestResponse
    Get-Process -Id (Get-NetTCPConnection -LocalPort 443).OwningProcess

    実行されている場合、サーバーを停止する必要があります。

    RequestResponse
    iisreset /stop
  3. Apache Solr またはその他のサービスがポート 8984 で実行されているかどうかを確認します。

    RequestResponse
    Get-Process -Id (Get-NetTCPConnection -LocalPort 8984).OwningProcess

    実行されている場合、それらを停止する必要があります。

    RequestResponse
    Stop-Service -Name "<the name of your service>"

    Non-Sucking Service Manager で開始した場合は、次のコマンドを使用して停止します。

    RequestResponse
    nssm stop "<the name of your service>"
  4. ソリューション フォルダーに移動し、MyProject ソリューションとプロジェクトを作成します。

    RequestResponse
    dotnet new sitecore.aspnet.gettingstarted -n MyProject
  5. MyProject/ フォルダーに移動します。

  6. 提供された init.ps1 スクリプトを使用して、Sitecore コンテナー環境用に次のアイテムを準備します。

    • *.myproject.localhost 用の valid/trusted ワイルドカード証明書。

    • myproject.localhost 用の hosts ファイル エントリ。

    • Sitecore インスタンス用の .env ファイルで必要な環境変数の値。

    重要
    • プロジェクト名またはフォルダー名にラテン文字以外の文字を使用すると、Docker レジストリ名と URL の文字制限により、予期しない結果が生じる可能性があります。

    • これらの準備手順の詳細については、Sitecore コンテナーのドキュメントを参照してください。

    Sitecore コンテナー環境を準備するには、次のようなコードを使用します。

    RequestResponse
    .\init.ps1 -InitEnv -LicenseXmlPath "<path to your license.xml file>" -AdminPassword "<your Sitecore administrator password>"

    この例には、.gitignore ファイル内の .env ファイルへの参照が含まれていません。これは、開発者が初期化された環境変数を共有できるようにするためです。.env ファイルをソース管理にチェックインすると、他の開発者は、init.ps1 スクリプトを実行するだけで証明書や hosts ファイルを準備できます。

    Sitecore ソリューション自体またはそのデータが機密である場合、.env ファイルをソース管理から除外し、一元化された設定情報を保管するための別の方法を検討してください。

  7. Sitecore Docker イメージをダウンロードし、コンテナーをインストールします。

    RequestResponse
    .\up.ps1

    テンプレートは、Windows hosts ファイルに次のエントリを作成します。各エントリは、Sitecore コンテナーを指します。

  8. スクリプトが Sitecore Identity Server をブラウザー タブで開くまで待ち、ログインしてデバイス認証を受け入れます。

  9. スクリプトが Content Management とレンダリング ホストをブラウザー タブで開くまで待ちます。

MyProject ソリューションのテスト

ヒント

Do you have some feedback for us?

If you have suggestions for improving this article,