特定のインスタンスに対してのみリポジトリベースの設定を定義します
この記事では、特定のインスタンスのリポジトリベースの設定について、Adobe Experience Managerで nodetype sling:OsgiConfig のノードとしてCRX リポジトリーに設定を保存する方法の詳細を説明します。
説明 description
環境
Adobe Experience Manager
問題/症状
この記事では、特定のインスタンスに対してリポジトリベースの設定を定義します。
解決策 resolution
1.Apache Felix Web 管理コンソールを設定 ます。
Apache Felix web 管理コンソール(http://<
host>
:<
port>
/system/console/configMgr)の設定は、現在のインスタンスでは常に固有です。
説明については、https://helpx.adobe.com/jp/experience-manager/6-4/sites/deploying/using/configuring-osgi.html#OSGiConfigurationintheRepositoryのドキュメントを参照してください
2. リポジトリーベースの設定
また、設定をノードタイプ sling:OsgiConfig のノードとしてCRX リポジトリに保存することもできます。
この方法を使用すると、複数のインスタンス間で設定を共有できます。
これらのノードの名前は、設定の永続 ID (PID)と等しい必要があります(例えば、サービスの名前)。 http://<
host>
:<
port>
/system/console/configMgr を見ると、これらの名前が service.pid プロパティとして表示されています。 これらの設定ノードは、config で始まり、その後にドットが付いた名前を持つノードタイプ nt:folder の子ノードである必要があります。 設定が適用されるすべての実行モードもドットで区切られます。
例:config.author、config.publish、config.author.dev、config.author.foo.dev
実行モード
特定のインスタンスが実行される特定の実行モードを定義できます。 デフォルトでは、オーサーインスタンスは実行モードのオーサーで実行され、パブリッシュインスタンスは実行モードのパブリッシュで実行されます。 1 つのインスタンスに対して複数の実行モードを定義できます(例:author、foo、dev)。
これらの実行モードを VM オプションとして設定します。
例えば、コンソールで以下を行います。
java -Dsling.run.modes=author,foo,dev -Xmx256m -jar aem64-quickstart.jar
または、開始スクリプトで次の操作を行います。
# default JVM options
CQ_JVM_OPTS='-Dsling.run.modes=author,foo,dev'
インスタンスの現在の実行モードは、http://<
host>
:<
port>
/system/console/status-slingsettings に表示されます。
メモ: デフォルトの実行モードであるオーサーとパブリッシュの変更または削除はお勧めしません。 代わりに、特定の実行モードを既存の実行モードのデフォルトリストに追加するだけです。
メモ: 同じメカニズムが、リポジトリベースのバンドルのインストールでも機能します。 ノードタイプ nt:folder のノードの下に、install で始まり、その後にドットが続く名前のバンドルを配置します。 バンドルが適用されるすべての実行モードは、ドットで区切られています。
例: 実行モード foo で実行されているすべてのインスタンスに特定の SMTP メールサーバー設定を指定するには、名前が config.foo でノードタイプが nt:folder のノードを /apps/we-retail に作成し、/libs/cq/config/com.day.cq.mailer.DefaultMailService ノードを /apps/we-retail/config.foo にコピーして、プロパティ smtp.host を調整します。
例: 特定の Logrotation 設定を持つには、ナレッジベース記事 request.log と access.log のローテーション方法の設定パッケージを使用し、実行モード foo でのみ実行されているすべてのインスタンスの設定を取る必要がある場合は、例えばノード設定の名前を config.foo に変更します。