---
title: "ウォークスルー:コンテナ環境にData Exchange Frameworkをインストールする準備"
slug: "walkthrough--preparing-to-install-data-exchange-framework-in-a-container-environment"
abstract: "コンテナ環境にData Exchange Frameworkをインストールするためのインストールファイルとイメージの準備方法。"
---
# ウォークスルー:コンテナ環境にData Exchange Frameworkをインストールする準備

Sitecore Data Exchange Framework(DEF)モジュールをインストールに追加する準備をするために、DockerサービスAzure Kubernetesにデプロイする場合でも、このウォークスルーの手順に従ってください。ウォークスルーでは以下の方法を説明しています:

-   インストールファイルを準備してください
-   Dockerイメージを構築する

## インストールファイルを準備してください

インストールに必要なファイルの準備:

1.  [Sitecoreのダウンロードページ](https://dev.sitecore.net/Downloads/)からDEFコンテナデプロイメントパッケージをダウンロードしてください。フォルダ構造をそのままローカルワークステーションに解凍します。
    
2.  DEFコンテナデプロイメントパッケージを展開したフォルダで、使っているWindowsバージョンとトポロジーのフォルダを開きます。例えばdef\\compose\\ltsc2019\\xp1。
    
3.  エディターで .env-exampleファイルを開いてください。以下はファイルの内容がどのようなものかの例を示しています:
    
    TOPOLOGY=xp1
    #Note: Copy this below if you are using the Tenant Service in DEF
    TENANT\_SERVICE\_HOST=xp1ts.localhost
    
4.  ファイル内の必要な変数をすべてクリップボードにコピーします。
    
5.  ローカルマシンのSitecoreコンテナデプロイフォルダにアクセスしてください。例えば、compose\\ltsc2019\\xp1
    
6.  エディタで .envファイルを開き、DEF .env-exampleファイルの変数を貼り付けます。
    
7.  .envファイルに以下の変数を追加します:
    
    DEF\_IMAGE=scr.sitecore.com/sxp/modules/sitecore-def-xp1-assets:8.0.0-1809
    TOOLING\_IMAGE=scr.sitecore.com/tools/sitecore-docker-tools-assets:10.3.0-1809
    
8.  .envファイルを保存してください。
    
9.  DEF compose\\<version>\\<topology> フォルダからdocker-compose.override.ymlファイルをコピーし、Sitecoreコンテナデプロイメントcompose\\<version>\\<topology> フォルダ( docker.compose.ymlファイルがある場所に貼り付けてください)。
    
10.  DEFでテナントサービスを使っていない場合は、docker-compose.override.ymlファイルを開いて、xdbautomationworkerとid画像のセクションを削除してください。
     

## Dockerイメージを構築する

インストールファイルを準備したら、各ロールごとにDockerファイルを作成し、Dockerイメージを構築します。

> !注画像アセットの詳細については、[Sitecoreモジュールの追加](https://doc.sitecore.com/en/developers/102/developer-tools/add-sitecore-modules.html)方法に関するドキュメントをご覧ください。

画像を作成するには:

1.  ローカルマシンのSitecoreコンテナデプロイフォルダにアクセスしてください。例えば、使っているWindowsバージョンとトポロジーのフォルダに移動します。 compose/ltsc2019/xp1。サブフォルダを作成し、moduleと名付けます。
    
2.  moduleフォルダ内に以下のサブフォルダを作成します:
    
    -   cm
    -   id
    -   xdbautomationworker
    
    > !注xdbautomationworkerモジュールとidモジュールは、テナントサービスを使用している場合にのみ必要です。テナントサービスを利用していない場合は、これら2つのモジュールのフォルダやファイルを作成する必要はありません。
    
3.  各サブフォルダに新しいファイルを作成し、Dockerfileと名付けます。
    
4.  cmフォルダのDockerfileファイルに以下の指示を入力してください:
    
    # escape=\`
    
    ARG BASE\_IMAGE
    ARG DEF\_IMAGE
    ARG TOOLING\_IMAGE
    
    FROM ${DEF\_IMAGE} as def
    FROM ${TOOLING\_IMAGE} as tooling
    FROM ${BASE\_IMAGE}
    
    SHELL "powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"
    
    WORKDIR C:\\inetpub\\wwwroot
    
    # Add DEF module
    COPY --from=def \\module\\cm\\content\\
    COPY --from=def \\module\\transforms\\ C:\\transforms\\
    
    COPY --from=tooling \\tools\\ \\tools\\
    RUN C:\\tools\\scripts\\Invoke-XdtTransform.ps1 -Path C:\\inetpub\\wwwroot -XdtPath \\transforms\\cm
    
5.  テナントサービスを利用している場合、idフォルダのDockerfileファイルに以下の指示を入力してください:
    
    # escape=\`
    
    ARG BASE\_IMAGE
    ARG DEF\_IMAGE
    ARG TOOLING\_IMAGE
    
    FROM ${DEF\_IMAGE} as def
    FROM ${TOOLING\_IMAGE} as tooling
    FROM ${BASE\_IMAGE}
    
    SHELL "pwsh", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"
    
    WORKDIR C:\\Identity
    
    # Add DEF module
    COPY --from=def \\module\\transforms\\ C:\\transforms\\
    
    COPY --from=tooling \\tools\\ \\tools\\
    RUN C:\\tools\\scripts\\Invoke-XdtTransform.ps1 -Path C:\\Identity -XdtPath c:\\transforms\\id
    
6.  テナントサービスを利用している場合、xdbautomationworkerフォルダのDockerfileファイルに以下の指示を入力してください:
    
    # escape=\`
    
    ARG BASE\_IMAGE
    ARG DEF\_IMAGE
    ARG TOOLING\_IMAGE
    
    FROM ${DEF\_IMAGE} as def
    FROM ${TOOLING\_IMAGE} as tooling
    FROM ${BASE\_IMAGE}
    
    SHELL "powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"
    
    # Add DEF MA module
    COPY --from=def \\module\\xdbautomationworker\\content C:\\service\\
    COPY --from=def \\module\\transforms\\C:\\transforms\\
    COPY --from=tooling \\tools\\\\tools\\
    RUN C:\\tools\\scripts\\Invoke-XdtTransform.ps1 -Path C:\\service -XdtPath \\transforms\\xdbautomationworker
    
7.  compose\\<version>\\<topology>\\docker-compose.override.ymlファイルに各役割のビルド指示を追加してください。
    
    すべてのトポロジーに対して、cm役割用の命令を追加しなければなりません。例えば:
    
    services:
     cm:
     image: sitecore-def-${TOPOLOGY}-cm:${SITECORE\_VERSION}
     build:
     context: ./module/cm
     args:
     BASE\_IMAGE: ${SITECORE\_DOCKER\_REGISTRY}sitecore-${TOPOLOGY}-cm:${SITECORE\_VERSION}
     DEF\_IMAGE: ${DEF\_IMAGE}
     TOOLING\_IMAGE: ${TOOLING\_IMAGE}
    
    XP1トポロジーを展開する場合は、cdロールの指示を以下のように追加してください:
    
    cd:
     image: sitecore-def-${TOPOLOGY}-cd:${SITECORE\_VERSION}
     build:
     context: ./module/cm
     args:
     BASE\_IMAGE: ${SITECORE\_DOCKER\_REGISTRY}sitecore-${TOPOLOGY}-cd:${SITECORE\_VERSION}
     DEF\_IMAGE: ${DEF\_IMAGE}
     TOOLING\_IMAGE: ${TOOLING\_IMAGE}
    
    XP0またはXP1トポロジーを展開する場合は、idロールとxdbautomationworkerロールの指示を追加してください。例えば:
    
    id:
     image: sitecore-def-${TOPOLOGY}-id:${SITECORE\_VERSION}
     build:
     context: ./module/id
     args:
     BASE\_IMAGE: ${SITECORE\_DOCKER\_REGISTRY}sitecore-id:${SITECORE\_VERSION}
     DEF\_IMAGE: ${DEF\_IMAGE}
     TOOLING\_IMAGE: ${TOOLING\_IMAGE}
    xdbautomationworker:
     image: sitecore-def-${TOPOLOGY}-xdbautomationworker:${SITECORE\_VERSION}
     build:
     context: ./module/xdbautomationworker
     args:
     BASE\_IMAGE: ${SITECORE\_DOCKER\_REGISTRY}sitecore-${TOPOLOGY}-xdbautomationworker:${SITECORE\_VERSION}
     DEF\_IMAGE: ${DEF\_IMAGE}
     TOOLING\_IMAGE: ${TOOLING\_IMAGE}
    
8.  Windowsコンソールでdocker-compose.override.ymlファイルを含むフォルダに移動します。次のコマンドを実行します:
    
    docker-compose build
    
9.  Dockerにデプロイする場合は、「 [DockerでData Exchange Frameworkをインストールする](https://doc.sitecore.com/xp/ja/developers/def/80/data-exchange-framework/install-data-exchange-framework-in-docker.html "Install Data Exchange Framework in Docker")」の手順を続けてください。
    
    Kubernetesにデプロイする場合は、「 [Walkthrough: Installation Data Exchange Framework in the Service](https://doc.sitecore.com/xp/ja/developers/def/80/data-exchange-framework/walkthrough--installing-data-exchange-framework-in-azure-kubernetes-service.html "Walkthrough: Installing Data Exchange Framework in Azure Kubernetes Service")」の指示をAzure Kubernetes続けてください。
    

> !注接続文字列の追加やウェブ設定ファイルの変更など、Sitecoreのデプロイメントを変更する場合、設定変換を使う必要があります。構成変換の適用方法については、Sitecore[コンテナ開発ドキュメント](https://doc.sitecore.com/developers/102/developer-tools/en/applying-configuration-transforms.html)をご覧ください。