アーカイブ・ファイルは、バイナリおよびその他のファイル・リソースをターゲット・ドメインにデプロイするために使用されます。 アーカイブは、特定のディレクトリ構造を持つZIPファイルです。 まだターゲット・システム上にないモデルで参照されるファイル・リソースは、アーカイブ内の正しいロケーションに格納する必要があり、モデルはアーカイブへのパスを反映する必要があります。
ターゲット・システムにすでに存在するファイル・リソースは、モデルでターゲット・システム上の正しいロケーションが指定されている場合、アーカイブに含める必要はありません。
この例は、アーカイブに含まれるEARファイル・リソースを参照するSourcePath
値を持つアプリケーションを示しています。
appDeployments:
Application:
simpleear:
SourcePath: wlsdeploy/applications/simpleear.ear
Target: my-cluster
ModuleType: ear
この例では、値がwlsdeploy/applications/simpleear.ear
のsimpleear
アプリケーションの属性SourcePath
を示しています。 プレフィクスwlsdeploy/
は、リソースが指定のロケーションのアーカイブ・ファイルにあり、ドメイン内のそのディレクトリ(この例では<domain-home>/wlsdeploy/applications/simpleear.ear
)にデプロイされることを示します。
これらは、様々なタイプのリソースに使用されるアーカイブ内のパスです。 これらのロケーションの一部の下にさらにディレクトリ構造を作成して、適宜ファイルおよびディレクトリを整理できます。 Archive Helper Toolを使用すると、アーカイブ・ファイルのエントリを簡単に追加、更新および削除できます。
WDT 4.0以降、以前に最上位のwlsdeploy
ディレクトリに格納されていた一部のタイプは、config/wlsdeploy
ディレクトリに移動されました。 config/wlsdeploy
で始まるアーカイブに格納されたものは、$DOMAIN_HOME/config/wlsdeploy
ディレクトリ内に格納されます。 これにより、ファイルは標準のWebLogic Server動作を利用できます:
pack
ツールでは、unpack
ツールで作成された管理対象サーバー・ディレクトリにこれらのファイルが含まれるように、これらのファイルが管理対象サーバー・テンプレートに含まれます。このファイル・レプリケーションは管理対象サーバーの起動時に行われるため、このロケーションで更新される非常に大きなファイルを配置すると、管理対象サーバーの起動時間が遅くなる可能性があります。 この新しいconfig/wlsdeploy
のロケーションに配置されるほとんどのファイル・タイプは、定義上は小さくなります。たとえば、データベース・ウォレットには、通常、tnsnames.ora
のような小さなテキスト・ファイルと、keystore.jks
のような小さなバイナリ・ファイルが含まれます。 custom
型は、ユーザーがconfig/wlsdeploy/custom
とwlsdeploy/custom
のいずれかのロケーションを選択できるようにする思考を必要とする唯一の型です。
config/wlsdeploy/custom
のロケーションを使用すると、ファイルまたはディレクトリをすべての管理対象サーバーにレプリケートできます。 これは、アプリケーションの外部に存在するファイルの処理や、頻繁に更新されない傾向があるカスタム・セキュリティ・プロバイダ関連のJARファイルの動的なデプロイなどの状況に最適です。 wlsdeploy/custom
のロケーションは、コンテンツのレプリケーションをサポートしていません。 これは、WebLogic Kubernetes Operatorを使用してKubernetesにデプロイする場合など、pack
作成テンプレートに含める必要のない大規模なファイルを格納する場合や、管理対象サーバーにレプリケートする場合に最適です。 config/wlsdeploy/coherence
Coherenceの永続ストアのCoherence構成ファイルまたは空のディレクトリ(あるいはその両方)のルート・ディレクトリ。
config/wlsdeploy/config
MIMEマッピング・プロパティ・ファイルを格納できるディレクトリ。
config/wlsdeploy/custom
これは、カスタム・ファイルおよびディレクトリを格納してアーカイブから抽出できるルート・ディレクトリです。 これらのファイルは、Discover Domain Toolによって収集されません。 このディレクトリのすべてのファイル・リソースは、createDomain
、updateDomain
およびdeployApps
の間に抽出されます。
一部のカスタム・ファイルは、wlsdeploy/custom
に属している場合があります。 ファイルに適したロケーションを特定するには、「2つの異なるディレクトリ構造があるのはなぜですか。」を参照してください。
このロケーションは、アプリケーションの構成に使用されるプロパティ・ファイルなど、アプリケーションの外部に存在するファイルを処理する場合に特に便利です。 このようなファイルを使用するアプリケーションをWDTでプロビジョニングするときに動作させる一般的なステップは、次のとおりです:
config/wlsdeploy/custom
フォルダ内の必要なロケーション(たとえば、config/wlsdeploy/custom/com/mycompany/myapp/myapp-config.properties
)に配置します。CLASSPATH
でファイルを検索していることを確認します。たとえば、ClassLoader.getResourceAsStream("com/mycompany/myapp/myapp-config.properties")
を使用します。$DOMAIN_HOME/config/wlsdeploy/custom
ディレクトリが含まれていることを確認します。 これを実現する1つの方法は、このディレクトリをPRE_CLASSPATH
環境変数に含むsetUserOverrides.sh
を、アーカイブ・ファイルのwlsdeploy/domainBin
のロケーションに追加することです。 抽出されるようにモデルのdomainInfo/domainBin
にsetUserOverrides.sh
を追加することを忘れないでください。 config/wlsdeploy/dbWallets/<wallet-name>
Oracleデータベースで使用するために名前付きデータベース・ウォレットを格納できるディレクトリ。 rcu
名は、RCUデータ・ソースのウォレットを格納するデフォルトのロケーションとして使用されます。 アーカイブに配置されるウォレットは、ZIPファイルまたは1つ以上のファイルのセットのいずれかです。 ZIPファイルの場合、Create DomainツールやUpdate DomainツールなどのWDTツールを実行すると、そのZIPファイルが適宜展開されます。
config/wlsdeploy/jms/foreignServer/<jms-foreign-server-name>
JMS外部サーバー・バインディング・ファイルが格納されるディレクトリ。
config/wlsdeploy/nodeManager
ノード・マネージャのキーストア・ファイルが格納されるルート・ディレクトリ。
config/wlsdeploy/scripts
スクリプト・ファイルが格納されるルート・ディレクトリ。 これには、JDBC作成スクリプトおよびWLDFアクション・スクリプトが含まれます。
config/wlsdeploy/servers/<server-name>
サーバー・キーストア・ファイルが格納されるルート・ディレクトリ。 これらは、サーバー名(config/wlsdeploy/servers/AdminServer/mykey.jks
など)で編成されます。
wlsdeploy/applications
アプリケーションとそのデプロイメント計画が格納されるルート・ディレクトリ。 アプリケーションは、EAR、WARまたはJARファイルとしてアーカイブに格納することも、このロケーションで展開されたディレクトリとして格納することもできます。
拡張されたWARアプリケーションのサンプルには、次のエントリがあります:
wlsdeploy/applications/myApp/index.jsp
wlsdeploy/applications/myApp/META-INF/MANIFEST.MF
wlsdeploy/applications/myApp/WEB-INF/classes/MyClass.class
wlsdeploy/applications/myApp/WEB-INF/web.xml
wlsdeploy/applications/myApp/WEB-INF/weblogic.xml
wlsdeploy/classpathLibraries
サーバー・クラスパスに使用されるJAR/ディレクトリを格納するルート・ディレクトリ。 このディレクトリの下にあるすべてのファイル・リソースは、モデルで参照されていないリソースであっても抽出されます。
wlsdeploy/custom
これは、カスタム・ファイルおよびディレクトリを格納してアーカイブから抽出できるルート・ディレクトリです。 これらのファイルは、Discover Domain Toolによって収集されません。 このディレクトリのすべてのファイル・リソースは、createDomain
、updateDomain
およびdeployApps
の間に抽出されます。
一部のカスタム・ファイルは、config/wlsdeploy/custom
に属している場合があります。 ファイルに適したロケーションを特定するには、「2つの異なるディレクトリ構造があるのはなぜですか。」を参照してください。
wlsdeploy/domainBin
$DOMAIN_HOME/bin
スクリプトが格納されるルート・ディレクトリ。 例に示すように、モデルのdomainInfo/domainBin
セクションで参照されるスクリプトのみが抽出されます。
domainInfo:
domainBin:
- wlsdeploy/domainBin/setUserOverrides.sh
wlsdeploy/domainLibraries
$DOMAIN_HOME/lib
ライブラリが格納されるルート・ディレクトリ。 ドメイン・ライブラリはJARファイルとして格納する必要があります。 例に示すように、モデルのdomainInfo/domainLibraries
セクションで参照されているライブラリのみが抽出されます。
domainInfo:
domainLibraries:
- wlsdeploy/domainLibraries/myLibrary.jar
wlsdeploy/opsswallet
Oracle Platform Security Servicesで使用するためにウォレットを格納できるディレクトリ。 アーカイブに配置されるウォレットは、ZIPファイルまたは1つ以上のファイルのセットのいずれかです。 ZIPファイルの場合、Create DomainツールやUpdate DomainツールなどのWDTツールを実行すると、そのZIPファイルが適宜展開されます。
wlsdeploy/security/saml2
SAML2パートナ・データ初期化ファイルを格納して、SAML2アイデンティティ・アサーション・プロバイダで使用できるディレクトリ。 これらのファイルには、saml2idppartner.properties
およびsaml2sppartner.properties
、およびそれらが参照するXMLメタデータ・ファイルを含めることができます。
これらのファイルがドメインの$DOMAIN_HOME/security
ディレクトリに存在する場合、Discover Domain Toolはそれらのファイルをアーカイブに追加します。 ただし、Discover Domain Toolは、SAML2パートナ・データのエクスポートや、エクスポートされたSAML2パートナ・データのWebLogic Serverへのロードに必要なプロパティ・ファイルの生成を試行しません。
Create DomainとUpdate Domain Toolはどちらも、これらのファイルをアーカイブから抽出し、ターゲット・ドメインの$DOMAIN_HOME/security
ディレクトリ(アーカイブに存在する場合)に配置します。 モデル参照は必要ありません。
対応する<filename>.initialized
ファイルがドメインの$DOMAIN_HOME/security
ディレクトリに存在する場合、サーバーはSAML2パートナ・データファイルをロードしません。 これは、既存のデータファイルがすでに処理されていることを示します。 サーバーにSAML2パートナ・データ・ファイルのリロードを強制するには、対応する<filename>.initialized
ファイルを削除し、サーバーを再起動してSAML2パートナ・データを再初期化します。
この機能が存在するのは、2023年10月のPSU (WebLogic Server 12.2.1.4および14.1.1)および将来のバージョンのWebLogic Serverからのみです。
wlsdeploy/security/xacmlPolicies
XACMLでポリシーを直接定義する際にXACML認可プロバイダ・ポリシーを格納できるディレクトリ。 ポリシー・ファイルの名前とモデルのポリシーの名前が一致している必要があります。 たとえば、次のモデル・エントリでは、XACMLポリシー・ファイルをwlsdeploy/security/xacmlPolicies/MyQueueSendPolicy.xml
のアーカイブに格納する必要があります。
MyQueueSendPolicy:
ResourceID: 'type=<jms>, application=MyJmsModule, destinationType=queue, resource=MyQueue, action=send'
XacmlDocument: wlsdeploy/security/xacmlPolicies/MyQueueSendPolicy.xml
XacmlStatus: 3
wlsdeploy/security/xacmlRoles
XACMLでロールを直接定義するときにXACMLロール・マッパー・ロール定義を格納できるディレクトリ。 ロール・ファイルの名前とモデルのロールの名前が一致している必要があります。 たとえば、次のモデル・エントリでは、XACMLロール定義ファイルをwlsdeploy/security/xacmlRoles/users.xml
のアーカイブに格納する必要があります。
users:
XacmlDocument: wlsdeploy/security/xacmlRoles/users.xml
XacmlStatus: 3
wlsdeploy/sharedLibraries
共有ライブラリとそのデプロイメント計画が格納されるルート・ディレクトリ。 共有ライブラリは、EAR、WARまたはJARファイルとしてアーカイブに格納することも、このロケーションで展開されたディレクトリとして格納することもできます。
wlsdeploy/stores
モデル内のFileStore
要素に空のディレクトリが存在する必要があるルート・ディレクトリ。
wlsdeploy/structuredApplications
「構造化」アプリケーションが格納されるルート・ディレクトリ。WebLogic Serverドキュメントでは、これらを「アプリケーション・インストール・ディレクトリ」と呼びます。 指定したディレクトリ構造内のアプリケーションは、EARまたはWARファイルとして、または展開されたディレクトリとしてアーカイブに格納できます。
サンプルの「構造化」アプリケーションには次のエントリが含まれている場合があります:
wlsdeploy/structuredApplications/myApp/app/webapp.war
wlsdeploy/structuredApplications/myApp/plan/plan.xml
wlsdeploy/structuredApplications/myApp/plan/WEB-INF/weblogic.xml
wlsdeploy/structuredApplications/myApp/plan/AppFileOverrides/updated.properties
wlsdeploy/wrcExtension
WebLogic Remote Console拡張WARファイル(console-rest-ext-6.0.war
)が格納されるディレクトリ。 Create Domain、Update DomainおよびDeploy Applicationsツールは、このディレクトリ内の任意のファイルを$DOMAIN_HOME/management-services-ext/
ディレクトリにデプロイします。 ノート: Deploy Applications Toolは、WDT 4.0.0で非推奨になりました。
Create Domain、Update Domain、Deploy ApplicationsおよびValidate Model Toolでは、コマンド行で複数のアーカイブ・ファイルを指定できます。 例えば:
$ weblogic-deploy\bin\createDomain.cmd -archive_file one.zip,two.zip,three.zip ...
ファイル・リソースは、これらのアーカイブのいずれかに存在できます。 各アーカイブ内のリソースは、以前のアーカイブで見つかったリソースよりも優先されます。
モデルが複数のアーカイブに存在するリソースを参照する場合、リスト内の最新が優先されます。 たとえば、モデルがwlsdeploy/applications/myapp.ear
を参照し、そのリソースがアーカイブone.zip
およびtwo.zip
に存在する場合、two.zip
のリソースが使用されます。
直接参照されずに抽出されたリソースは、archive_file
引数で指定された順序でアーカイブから抽出されます。 たとえば、one.zip
およびtwo.zip
にwlsdeploy/classpathLibraries
の下のリソースがある場合、one.zip
内のリソースは<domain-home>/wlsdeploy/classpathLibraries
に抽出され、two.zip
のリソースは同じロケーションに抽出され、重複するファイルが上書きされます。