---
title: "カスタムCommerceコンテナ画像作成のワークフロー"
slug: "workflow-for-creating-custom-commerce-container-images"
abstract: "Sitecore Commerce Container SDKに提供されているリソースを使って、自分だけのCommerceコンテナイメージを構築する方法。"
---
# カスタムCommerceコンテナ画像作成のワークフロー

機能やVisual Studioで正常に実行可能な完全なソリューションの開発が終わったら、新しいコマースソリューションのコンテナイメージを作成してデプロイできます。

> !注このワークフロー [は、すでに](https://dev.sitecore.net/Downloads/Sitecore_Commerce/101/Sitecore_Experience_Commerce_101.aspx) 開発者ワークステーションでSitecore.Commerce.Container.SDK.ZIPパッケージをダウンロードし解凍していることを前提としています。
> 
> [Sitecore Commerce Container SDK](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/sitecore-commerce-container-sdk.html "Sitecore Commerce Container SDK")の内容や提供されるスクリプトファイルに慣れておくことを必ず確認してください。

進む前に:

-   カスタムXCコンテナを構築するには、必ずバージョン1.27.4(またはそれ以前)Docker Composeを使用してください。Docker Composeのバージョンを確認するには、 docker-compose --version コマンドを実行することができます。
-   Dockerコンテナのトポロジーフォルダーはすべて Sitecore Commerce Containers SDK フォルダ内に保持してください。トポロジーフォルダはカスタムコンテナを成功裏に構築するために必要なリソースを共有します。

自分だけのSitecore XCコンテナ画像を作成するには:

-   [WDPマッピングファイルを更新してください](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/workflow-for-creating-custom-commerce-container-images.html#UUID-3856eccf-44a2-17d6-f3e0-01a09ae0ea12_section-idm231933134738303 "Update the WDP mapping file")
-   [カスタム画像タグを設定に追加してください](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/workflow-for-creating-custom-commerce-container-images.html#UUID-3856eccf-44a2-17d6-f3e0-01a09ae0ea12_section-idm23193476876763 "Add your custom image tags to the configuration")
-   [カスタマイズをSitecore Commerce Container SDKに追加してください](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/workflow-for-creating-custom-commerce-container-images.html#UUID-3856eccf-44a2-17d6-f3e0-01a09ae0ea12_section-idm2319343218384 "Add your customization to the Sitecore Commerce Container SDK")
-   [環境変数を画像タグの値で更新してください](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/workflow-for-creating-custom-commerce-container-images.html#UUID-3856eccf-44a2-17d6-f3e0-01a09ae0ea12_section-idm231934766201352 "Update the environment variables with image tag values")
-   [コンテナ画像のコンテンツを入手](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/workflow-for-creating-custom-commerce-container-images.html#UUID-3856eccf-44a2-17d6-f3e0-01a09ae0ea12_section-idm231933242031533 "Get content for container images")
-   [コンテナイメージを構築しましょう](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/workflow-for-creating-custom-commerce-container-images.html#UUID-3856eccf-44a2-17d6-f3e0-01a09ae0ea12_section-idm253206233152888 "Build your container images")

## WDPマッピングファイルを更新してください

WDPMapping.jsonファイルには、Sitecore Experience Commerce(XC)リリースパッケージのアーティファクトをdocker-compose buildが処理するための正しい位置に配置するためのマッピング情報が含まれています。

> !注自社のCommerce EngineソリューションでXCコンテナを作成する際は、Sitecore XCリリースパッケージの一部であるデフォルトのサンプルCommerce Engine WDP(Sitecore.Commerce.Engine.OnPrem.Solr)への参照を削除しなければなりません。

カスタマイズしたソリューションの領域に対応するWDPへの参照は削除し、デフォルトのリリースパッケージでカスタマイズが上書きされるのを避けるべきです。例えば、Commerce Business Toolsをカスタマイズした場合、WDPMapping.jsonファイルからSitecore.BizFx.OnPremブロックを削除する必要があります。

更新するために WDPMappings.json

1.  Sitecore.Commerce.Container.SDK.\*.\*.\*\*\*/scripts/WDPMapping.jsonを開けろ。
    
2.  サンプルのCommerce Engine WDPを削除してください:
    
    {
     "WDPs": 
     "Sitecore.Commerce.Engine.OnPrem.Solr"
     ,
     "DestinationFolder": "xc-common/engine/wdp",
     "ToCopyFolder": "Content/Website"
    }
    
3.  XC Business Toolsをカスタマイズしている場合は、Sitecore.BizFx.OnPremパッケージへのマッピングを含む以下のセクションも削除してください。
    
    {
        "WDPs": 
             "Sitecore.BizFx.OnPrem"
        ,
        "DestinationFolder": "xc-common/bizfx/wdp",
         "ToCopyFolder": "Content/Website"
    
    }

## カスタム画像タグを設定に追加してください

デフォルトでは、Commerceコンテナのビルドプロセスでは最新のタグが付いた画像を使用します。特定の画像をコンテナに入れたい場合は、使いたい画像のバージョンに対応するタグで設定を更新する必要があります。

変更する設定ファイルは、Windows OSタグのバージョンに依存します。例えば、config2009.json、config.2004、config20H2.json、configltsc2019.jsonなど、コンテナをホストするWindows OSのバージョンに対応するJSONファイルを修正してください。

カスタム画像タグを設定に追加するには:

1.  ホスト上で動作しているOSに応じて適切なJSONファイルを開きます。例えば config2009.json、 config2004.json、 config20H2.json、または configltsc2019.json。
2.  "customercommercetag"の値を適切なタグ値に置き換えます。

## カスタマイズをSitecore Commerce Container SDKに追加してください

Commerce Engineのカスタマイズをコンテナ化するには、カスタムコードやバイナリを適切なSitecore.Commerce.Container.SDKフォルダに追加する必要があります。カスタムアーティファクトを追加するSDKフォルダ構造の位置は、カスタマイズが影響するソリューションの範囲によって異なります。

-   Commerce Engineのカスタマイズアーティファクトを以下のフォルダに追加してください: xc-common/engine/wdp/
    
    > !注wdpフォルダを作成する必要があります。
    
-   Business Toolsのカスタマイズ機能もフォルダに追加してください: xc-common/engine/bizfx/wdp
    
    > !注*WDP*フォルダを作成しなければなりません。
    
-   Content Delivery (CD)またはContent Management (CM)役割に影響を与えるカスタムアーティファクトを含めるには、適切なWDPフォルダに追加する必要があります。CMおよびCDフォルダへのパスは、それぞれ以下の通りです:
    
    -   CMカスタマイズ用のWDPフォルダー: <sdk\_directory>xc1-cxa/cm/wdp
    -   CDカスタマイズ用のWDPフォルダー: <sdk\_directory>xc1-cxa/cd/wdp
    
    > !注カスタムファイルをWDPフォルダに追加する際は、CDやCMインスタンスのルートフォルダと同じフォルダ構造を再現しなければなりません。 <sdk\_directory>xc1-cxa/<CD or CM>/wdpフォルダはinetpub/wwwroot/<CD or CM instance> フォルダに相当します。
    > 
    > 例えば、新しいバイナリファイルを含むCDカスタマイズがある場合、WDPフォルダのルートに新しいバイナリを入れたbinフォルダを作成します。例えばsdk\_directory>xc1-cxa/cm/wdp/bin)、CDのルートフォルダ( inetpub/wwwroot/SXAstorefront/bin)の構造に合わせて。
    

## 環境変数を画像タグの値で更新してください

UpdateEnvTag.ps1タグを使って、.envファイルを新しい画像タグの値で更新します。例えば、config2009.jsonやconfigltsc2019.jsonファイルからのものなどです。

環境変数を新しいタグ値で更新するには:

-   PowerShellウィンドウを開き、次のコマンドを実行してください:
    
    UpdateEnvTag.ps1 -jsonFile 'C:\\sitecore-commerce\\scripts\\configltsc2019.json' \`
     -envRootPath 'C:\\sitecore-commerce'
## コンテナ画像のコンテンツを入手

PrepContainerbuild.ps1スクリプトを使って、マシン上のSitecore Experience Commerceリリースパッケージの場所からアーティファクトを取り出し、Sitecore.Commerce.Container.SDKディレクトリ構造に展開します。PrepContainerbuild.ps1はWDPMapping.jsonであらかじめ定義された場所にパッケージをコピーします。

画像の内容を得るには:

1.  以下のSitecore Experience Commerceリリースパッケージを[Sitecore Downloads](https://dev.sitecore.net/Downloads/Sitecore_Commerce.aspx)サイトからダウンロードしてください:
    
    -   Packages for On Premise WDP \*\*\*\*.\*\*.\*\*-\*.\*.\*\*\*
    
    > !注コンテナビルドの準備に使われるPrepContainerbuild.ps1スクリプトには、このリリースパッケージ内のWDPへの参照が含まれています。
    
2.  コンテナイメージを取得するには、PowerShellウィンドウを開き、次のコマンドを実行します。
    
    PrepContainerbuild.ps1 -jsonFile 'C:\\src\\Commerce.Containers\\WDPMapping.json' -releaseZipPath 'C:\\src\\Commerce.Containers\\downloads'
## コンテナイメージを構築しましょう

コンテナイメージを作成するには:

1.  PowerShellウィンドウを開き、次のコマンドを実行してください:
    
    ContainerBuild.ps1 -envRootPath 'C:\\sitecore-commerce'
    
2.  すべてのDockerイメージをリストアップして画像が作成されたことを確認します:
    
    docker images