---
schema_version: "1"
id: 25259b9a9b6a211562c9c13e3e6f1666f8a003e0bcca47709f373813c768da9c
title: 環境プロパティの設定
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/mule-runtime/4.8/deploying-to-multiple-environments.md
canonical_url: https://docs.mulesoft.com/jp/mule-runtime/4.8/deploying-to-multiple-environments
source_site: docs.mulesoft.com
content_type: documentation
content_hash: f496e090a32dfe576829f9332c0ac6e654e544d4b9e6f65e589b8724eca533eb
description: MuleSoft Documentation Site
release: "4.8"
latest: false
---
# 環境プロパティの設定

作業している開発環境 (QA、本番前、本番など) に基づいてプロパティファイルを自動的に読み込むように Mule アプリケーションを設定できます。これにより、オンプレミスとクラウドの両方へのアプリケーションのデプロイが容易になります。この設定では、以下のタスクを完了する必要があります。

1. アプリケーション内で各開発環境のプロパティファイルを作成します。
2. 起動時に環境を探すようにアプリケーション内でプロパティプレースホルダーを設定します。
3. アプリケーションのデプロイ時に特定の開発環境を参照するように環境変数を設定します。

環境間で異なっていなくても、設定の他の側面 (タイムアウト値やポーリング頻度など) を外部化することを考慮してください。この設定により、Mule アプリケーションが 1 つのプロパティファイルで完全に設定可能になるため、調整や試験が容易になります。

[Studio のサンプルアプリケーションをダウンロードする](https://docs.mulesoft.com/jp/mule-runtime/4.8/_attachments/multiple-envs-example.jar)

## [](#環境プロパティを使用する場合の考慮事項)環境プロパティを使用する場合の考慮事項

環境プロパティを設定する場合は次のガイドラインを考慮してください。

- プロパティファイルの一貫した命名戦略を使用して、プロパティファイルがアプリケーション間で一意になるようにします。
    
    この方法により、チーム間でファイルを容易に再利用できるようになります。適切な戦略として、アプリケーション名またはアプリケーション ID をプロパティファイル名に追加することをお勧めします。
- [共有リソース](https://docs.mulesoft.com/jp/mule-runtime/4.8/shared-resources)​構造を介して複数のアプリケーションをデプロイする場合は、プロパティファイルに何も設定しないでください。
    
    設定すると、ドメインを共有するさまざまなアプリケーション間で競合が起こる可能性があります。代わりに、デプロイしたアプリケーション、そのドメイン、およびそのドメイン下の他のアプリケーションのスコープにわたる環境変数を設定することができます。
    
    Studio では、​**\[Run Configurations (設定の実行)\]**​ メニューの ​**\[Environment (環境)\]**​ タブを使用して環境変数を作成できます。\[Environment (環境)\] タブには、​**\[Play (再生)\]**​ ボタンの右にあるドロップダウンメニューからアクセスできます。

## [](#環境プロパティ設定の基本アーキテクチャ)環境プロパティ設定の基本アーキテクチャ

次の Mule 設定フラグメントでは、​`env`​ というグローバルプロパティ、動的設定プロパティファイル (​`env`​ プロパティに基づく)、および変数設定を含む HTTP Connector を定義しています。

```xml
<global-property doc:name="Global Property" name="env" value="qa" />
<configuration-properties doc:name="Configuration properties" file="${env}.yaml" />
<http:listener-config name="HttpListenerConfiguration"
                      doc:name="HTTP Listener Configuration"
                      host="${host}"
                      port="${port}"
                      basePath="${path}" />
```

次の例では Spring のプロパティプレースホルダー解決メカニズムを使用しています。変数ビット (​**ベースパス**​、​**ホスト**​、​**ポート**​) が明確に示されています。これらは、このコネクタのデプロイ先の環境ごとに異なる可能性があります。

アプリケーションをデプロイするときに、​`env`​ プロパティをデプロイ先の特定の環境 (​`qa`​ や ​`prod`​ など) に動的に置き換えることができます。これにより、設定された環境に固有のプロパティを含む異なる ​`.yaml`​ ファイルを Mule アプリケーションで読み込むことができます。

これらの環境変数の値を提供するため、環境ごとに YAML 設定ファイルを使用します。

プロパティファイル: qa.yaml

path: "test/products"
host: "localhost"
port: 8082

プロパティファイル: prod.yaml

path: "products"
host: "www.acme.com"
port: 8081

## [](#環境プロパティの作成と設定)環境プロパティの作成と設定

アプリケーション内で変数プロパティファイルを作成し、起動時に環境を探すように設定します。また、環境プロパティは Studio でテストすることもできます。これらの作業を完了するには、以下の手順を参照してください。

### [](#studio-ビジュアルエディターの使用)Studio ビジュアルエディターの使用

1. アプリケーション内でサポートする環境のリストを定義します。たとえば、一般的なユースケースとして、本番環境と QA 環境の両方をサポートするようにアプリケーションを設定します。  
    変数 ​`variable`​ を環境 ​`prod`​ および ​`qa`​ 内で定義し、1 つのアプリケーションを使用してテストします。

1. `src/main/resources`​ フォルダーを右クリックし、​**\[New (新規)\]**​ > ​**\[File (ファイル)\]**​ を選択して、サポートする環境ごとにプロパティファイルを作成します。例:
    
    - `qa.yaml`
    - `prod.yaml`
        
        ![Anypoint Studio のさまざまな環境 (本番や QA など) のフォルダーが含まれるプロジェクト構造が表示されている Package Explorer](/mulesoft/current/ja-jp/mule-runtime/4.8/_images/deploying-to-multiple-environments-01.png)
2. この新しい各ファイルをダブルクリックすると、ファイルが Studio の新しいタブで開きます。これを編集することで、ファイル名に対応する環境のプロパティを設定できます。たとえば、以下の図のようにプロパティを追加することができます。このプロパティはアプリケーションの任意の場所で使用できます。
    
    ![QA YAML 設定ファイル](/mulesoft/current/ja-jp/mule-runtime/4.8/_images/deploying-to-multiple-environments-02.png)
    
    ![本番 YAML 設定ファイル](/mulesoft/current/ja-jp/mule-runtime/4.8/_images/deploying-to-multiple-environments-03.png)
3. プロパティファイルを閉じます。
4. キャンバスの下にある Studio プロジェクトの \[Global Elements (グローバル要素)\] タブ内をクリックします。
5. 新しいグローバル要素を ​**\[Create (作成)\]**​ します。 要素種別を選択する場合は、​**\[Global Configurations (グローバル設定)\]**​ の下にある ​**\[Configuration properties (設定プロパティ)\]**​ を選択します。
    
    ![Anypoint Studio の \[Global Configurations (グローバル設定)\] の \[Configuration Properties (設定プロパティ)\] などのグローバル要素種別を選択する設定パネル](_images/deploying-to-multiple-environments-04.png)
6. **\[File (ファイル)\]**​ 項目の値を ​`${env}.yaml`​ に設定します。
7. 新しいプロパティを ​**\[Create (作成)\]**​ し、デフォルトの環境を追加します。要素種別を選択する場合は、​**\[Global Configurations (グローバル設定)\]**​ の下にある ​**\[Global Property (グローバルプロパティ)\]**​ を選択します。
    
    ![Anypoint Studio の \[Global Configurations (グローバル設定)\] の \[Global Propert (グローバルプロパティ)\] などのグローバル要素種別を選択する設定パネル](_images/deploying-to-multiple-environments-05.png)
8. プロパティに値を設定します。
    
    ![Anypoint Studio の QA の環境変数が含まれる設定ダイアログ](/mulesoft/current/ja-jp/mule-runtime/4.8/_images/deploying-to-multiple-environments-06.png)
9. 設定済みの ​**\[Global Property (グローバルプロパティ)\]**​ 値を編集することで、環境を変更することができます。

### [](#xml-エディターの使用)XML エディターの使用

1. アプリケーション内でサポートする環境のリストを定義します。たとえば、一般的なユースケースとして、本番環境と QA 環境の両方をサポートするようにアプリケーションを設定します。  
    変数 ​`variable`​ を環境 ​`prod`​ および ​`qa`​ 内で定義し、1 つのアプリケーションを使用してテストします。

1. `src/main/resources`​ フォルダーを右クリックし、​**\[New (新規)\]**​ > ​**\[File (ファイル)\]**​ を選択して、サポートする環境ごとにプロパティファイルを作成します。例:
    
    - `qa.yaml`
    - `prod.yaml`
        
        ![Anypoint Studio のさまざまな環境 (本番や QA など) のフォルダーが含まれるプロジェクト構造が表示されている Package Explorer](/mulesoft/current/ja-jp/mule-runtime/4.8/_images/deploying-to-multiple-environments-01.png)
2. この新しい各ファイルをダブルクリックすると、ファイルが Studio の新しいタブで開きます。これを編集することで、ファイル名に対応する環境のプロパティを設定できます。たとえば、以下の図のようにプロパティを追加することができます。このプロパティはアプリケーションの任意の場所で使用できます。
    
    ![QA YAML 設定ファイル](/mulesoft/current/ja-jp/mule-runtime/4.8/_images/deploying-to-multiple-environments-02.png)
    
    ![本番 YAML 設定ファイル](/mulesoft/current/ja-jp/mule-runtime/4.8/_images/deploying-to-multiple-environments-03.png)
3. プロパティファイルを閉じます。
4. キャンバスの下にある Studio アプリケーションの \[Configuration XML (設定 XML)\] タブ内をクリックします。
5. **configuration-properties**​ 要素を XML ファイルに追加し、ファイル名を設定可能にします。

```xml
<configuration-properties doc:name="Configuration properties" file="${env}.yaml" />
```

1. **\[Global Property (グローバルプロパティ)\]**​ 要素を追加して、デフォルトの環境名を設定します。

```xml
<global-property doc:name="Global Property" name="env" value="qa" />
```

1. 設定済みの ​**\[Global Property (グローバルプロパティ)\]**​ 値を編集することで、環境を変更することができます。

### [](#studio-での構成済み環境プロパティのテスト)Studio での構成済み環境プロパティのテスト

変数プロパティファイルで設定した特定の環境がアプリケーションで使用されることをテストするには、Studio に埋め込まれた Mule でアプリケーションを実行します。

1. \[Package Explorer\] ビューで、デプロイするプロジェクトのファイル名を右クリックし、​**\[Run As (別のユーザーとして実行)\]**​ > ​**\[Mule Application (Mule アプリケーション)\]**​ を選択します。
2. Studio は、前の手順の ​**\[Global Property (グローバルプロパティ)\]**​ で指定された環境変数に従って、アプリケーションを自動的にデプロイします。
3. 再度、\[Package Explorer\] ビューで、デプロイするプロジェクトのファイル名を右クリックし、​**\[Run As (別のユーザーとして実行)\]**​ > ​**\[Run Configurations…​ (設定の実行…​)\]**​ を選択します。
    
    ![プロジェクト構造で設定を実行する方法が表示されている \[Package Explorer\] ビュー](_images/deploying-to-multiple-environments-07.png)
4. `Arguments`​ タブでシステムプロパティを定義します。
    
    ![\[Run Configurations (設定を実行)\] パネル](_images/deploying-to-multiple-environments-08.png)
5. `Run`​ ボタンをクリックして手順を完了します。​`qa.yaml`​ で定義されたプロパティではなく ​`prod.yaml`​ で設定されたプロパティが使用されます。

## [](#アプリケーションのデプロイのための環境変数の設定)アプリケーションのデプロイのための環境変数の設定

Mule は開始時に環境変数を読み込みます。そのため、デプロイメント対象 (CloudHub またはオンプレミス) に応じて、アプリケーションのデプロイ時 (CloudHub) または Mule インスタンスの開始時 (オンプレミス) に環境を設定する必要があります。

### [](#オンプレミスでの-mule-の開始時に特定の環境を設定)オンプレミスでの Mule の開始時に特定の環境を設定

#### [](#コマンドラインの使用)コマンドラインの使用

アプリケーションをデプロイする環境を、実行時に環境変数を使用して識別します。次の例に従って、使用する環境で Mule を実行するようにコマンドを実行します。

```console
$ mule -M-Denv=prod
```

使用する設定済みの環境で Mule が開始されたら、目的のデプロイ方法を使用してアプリケーションをデプロイできます。

#### [](#anypoint-runtime-manager-の使用)Anypoint Runtime Manager の使用

前提条件として、​[Anypoint Runtime Manager でサーバーを作成](https://docs.mulesoft.com/jp/runtime-manager/servers-create)​し、Mule にリンクする必要があります。次に、​[カスタムサーバープロパティを作成](https://docs.mulesoft.com/jp/runtime-manager/servers-properties-create)​できます。

### [](#cloudhub-へのデプロイ時に特定の環境を設定)CloudHub へのデプロイ時に特定の環境を設定

#### [](#studio-から-cloudhub-へのデプロイ)Studio から CloudHub へのデプロイ

Studio から、プロパティの環境変数を設定するプロセスを開始し、アプリケーションを CloudHub にデプロイできます。

1. \[Package Explorer\] ビューで、デプロイするプロジェクトのファイル名を右クリックし、​**\[Anypoint Platform\]**​ > ​**\[Deploy to Cloud (クラウドにデプロイ)\]**​ を選択します。
    
    ![アプリケーションを CloudHub にデプロイする方法が表示されている \[Package Explorer\] ビュー](_images/deploying-to-multiple-environments-09.png)
2. 要求されたデータを入力し、​**\[Properties (プロパティ)\]**​ タブをクリックします。
3. **\[Key (キー)\]**​ を​**「env」**​に設定し、その値を​**「prod」**​に設定して、新しい環境変数を追加します。
    
    ![環境固有のプロパティが含まれる、アプリケーションの CloudHub デプロイメント設定](/mulesoft/current/ja-jp/mule-runtime/4.8/_images/deploying-to-multiple-environments-10.png)
4. **\[Deploy Application (アプリケーションをデプロイ)\]**​ をクリックします。

#### [](#runtime-manager-から-cloudhub-へのデプロイ)Runtime Manager から CloudHub へのデプロイ

Anypoint Runtime Manager を介してアプリケーションを CloudHub にデプロイするには、Runtime Manager コンソールを使用して​[プロパティ値を設定](https://docs.mulesoft.com/jp/mule-runtime/4.8/configuring-properties#setting-properties-values-in-runtime-manager.adoc)​できます。

## [](#関連情報)関連情報

- [変数プロパティの設定](https://docs.mulesoft.com/jp/mule-runtime/4.8/configuring-properties)
- [共有リソース](https://docs.mulesoft.com/jp/mule-runtime/4.8/shared-resources)