イメージ・ツールを使用してコンテナ・イメージを作成したら、そのイメージを随時変更できます。 updateコマンドを使用して、イメージ・ツールで作成された既存のコンテナ・イメージを更新します。 たとえば、次のような操作を一時的に行う場合があります。
ノート: SPBはパッチではなく、すべてのPSUおよび推奨CPUおよびSPUパッチをWebLogic Serverインストールに適用するメカニズムであるため、WebLogic Image Toolはスタック・パッチ・バンドル(SPB; Doc ID 2764636.1を参照)をサポートしていません。
updateコマンドに必要なオプションがマークされます。
Usage: imagetool update [OPTIONS]
Update WebLogic Docker image with selected patches
| パラメータ | 定義 | デフォルト |
|---|---|---|
--fromImage |
(必須)拡張するコンテナ・イメージ。 提供されたイメージには、ミドルウェアがインストールされているOracle Homeが含まれている必要があります。 fromImageオプションは、新しいイメージの作成の開始点として機能します。 |
|
--tag |
(必須)最終ビルド・イメージのタグ。 例: store/oracle/weblogic:12.2.1.3.0 |
|
--additionalBuildCommands |
追加のビルド・コマンドを使用したファイルへのパス。 詳細については、「追加情報」を参照してください。 | |
--additionalBuildFiles |
additionalBuildCommandsで必要な追加ファイル。 ビルド・コンテキストにコピーする必要があるファイルのカンマ区切りリスト。 「追加情報」を参照してください。 |
|
--builder, -b |
Dockerfileを処理する実行ファイル。 パスにない場合は、実行可能ファイルのフルパスを使用します。 | デフォルトはdockerで、設定する場合は環境変数WLSIMG_BUILDERの値に設定されます。 |
--buildNetwork |
イメージ・ビルド時のRUN命令のネットワーク・モード。 Docker buildについては、--networkを参照してください。 |
|
--chown |
ファイルの作成およびイメージ内のミドルウェア・パッチの適用に使用されるuserid:groupid。 ユーザーIDおよびグループIDはイメージにすでに存在している必要があります。 |
指定されたイメージ内のOracle Homeのユーザーおよびグループにデフォルト設定されます。 |
--dryRun |
Dockerビルド実行をスキップし、Dockerfileをstdoutに出力します。 | |
--httpProxyUrl |
HTTPプロトコルのプロキシ。 例: http://myproxy:80またはhttp:user:passwd@myproxy:8080 |
|
--httpsProxyUrl |
HTTPSプロトコルのプロキシ。 例: https://myproxy:80またはhttps:user:passwd@myproxy:8080 |
|
--latestPSU |
(非推奨)最新のPatchSet Updateを検索して適用します。「追加情報」を参照してください。 | |
--opatchBugNumber |
OPatchのパッチ番号(OPatchへのパッチ適用)。 | 28186730 |
--password |
STDINのOracle Support --userのパスワードをリクエストします。--userを参照してください。 |
|
--passwordEnv |
Oracle Supportパスワードを含む環境変数。--userを参照してください。 |
|
--passwordFile |
Oracle Supportパスワードのみを含むファイルへのパス。--userを参照してください。 |
|
--patches |
パッチIDのカンマ区切りリスト。 例: 12345678,87654321 |
|
--platform |
ビルドするターゲット・プラットフォームを設定します。 サポートされる値: linux/amd64またはlinux/arm64。 |
|
--pull |
ビルド中、常に新しいバージョンのベース・イメージをプルしようとします。 | |
--recommendedPatches |
(非推奨)最新のPatchSet更新および推奨パッチを検索して適用します。 これは、--latestPSUよりも優先されます。 「追加情報」を参照してください。 |
|
--resourceTemplates |
イメージ・ツールで解決する必要があるプレースホルダーを含む1つ以上のファイル。 「リソース・テンプレート・ファイル」を参照してください。 | |
--skipcleanup |
ビルド・コンテキスト・フォルダ、中間イメージおよび失敗したビルド・コンテナは削除しないでください。 デバッグを目的としています。 | |
--strictPatchOrdering |
パッチを一度に1つ適用するようにOPatchに指示します(napplyではなくapplyを使用します)。 |
|
--target |
作成されたイメージを使用するターゲット環境を選択します。 サポートされる値: Default (Docker/Kubernetes)、OpenShift。 「追加情報」を参照してください。 |
Default |
--type |
インストーラのタイプ。 サポートされる値: WLS, WLSDEV, WLSSLIM, FMW, IDM, MFT, OAM, ODI, OHS, OIG, OUD, OUD_WLS, OID, OSB, SOA, SOA_OSB, SOA_OSB_B2B, WCC, WCP, WCS |
WLS |
--useBuildx |
コンテナ・イメージを構築するには、BuildKitを使用します。 | |
--user |
Oracleサポート電子メールID。 userを指定する場合は、--passwordEnvを使用して環境変数として、または--passwordFileを使用するファイルとして、または--passwordを使用するコマンド行で対話形式でパスワードを指定する必要があります。 |
|
--wdtArchive |
WDTアーカイブZIPファイルまたはカンマ区切りファイルのリスト。 | |
--wdtDomainHome |
WDTの-domain_homeへのパス。 |
/u01/domains/base_domain |
--wdtDomainType |
WDTドメイン・タイプ。 サポートされる値: WLS, JRF, RestrictedJRF |
WLS |
--wdtEncryptionKey |
STDINでリクエストされるWDT -use_encryptionのパスフレーズ。 |
|
--wdtEncryptionKeyEnv |
環境変数として提供されるWDT -use_encryptionのパスフレーズ。 |
|
--wdtEncryptionKeyFile |
ファイルとして提供されるWDT -use_encryptionのパスフレーズ。 |
|
--wdtHome |
WDTインストールおよびモデルのイメージ内のターゲット・フォルダ。 | /u01/wdt |
--wdtJavaOptions |
WDTのJavaコマンドライン・オプション。 | |
--wdtModel |
WDTモデル・ファイルまたはファイルのカンマ区切りリスト。 | |
--wdtModelHome |
WDTモデル、変数およびアーカイブ・ファイルをコピーするイメージ内のターゲットのロケーション。 | {wdtHome}/models |
--wdtModelOnly |
WDTをインストールし、モデルをイメージにコピーしますが、ドメインは作成しません。 | false |
--wdtOperation |
新しいドメインを作成するか、既存のドメインを更新します。 サポートされる値: CREATE, UPDATE, DEPLOY |
CREATE |
--wdtRunRCU |
ドメインの作成時にRCUを実行するようにWDTに指示します。 | |
--wdtStrictValidation |
WDTバリデーション・メソッドには厳密なバリデーションを使用します。 モデルのみを使用している場合にのみ適用されます。 | false |
--wdtVariables |
WDT変数ファイルまたはファイルのカンマ区切りリスト。 | |
--wdtVersion |
使用するWDTツール・バージョン。 |
--additionalBuildCommandsこれは、Dockerビルド・ステップに追加のコマンドを提供するための拡張オプションです。
このパラメータの入力は、1つ以上の有効なセクションを含む単純なテキスト・ファイルです。 更新の有効なセクション:
| セクション | 使用可能変数 | ビルド・ステージ | タイミング |
|---|---|---|---|
before-wdt-command |
DOMAIN_HOME |
中間(WDT_BUILD) | WDTがインストールされる前。 |
after-wdt-command |
DOMAIN_HOME |
中間(WDT_BUILD) | WDTドメインの作成/更新が完了した後。 |
final-build-commands |
JAVA_HOME ORACLE_HOME DOMAIN_HOME |
最終イメージ | すべてのイメージ・ツール・アクションが完了した後、コンテナ・イメージが確定される直前。 |
ノート: 中間段階で行われた変更は、手動でコピーしないかぎり最終イメージに繰り越されない場合があります。
イメージ・ツールは、ドメイン・ホームおよびWDTホーム・ディレクトリを最終イメージにコピーします。
これらのディレクトリ内に完全に含まれる変更は、final-build-commandsセクションに追加のCOPYコマンドを必要としません。
各セクションには、1つ以上の有効なDockerfileコマンドが含まれており、次のようになります:
[after-fmw-install]
RUN rm /some/dir/unnecessary-file
COPY --chown=oracle:oracle files/my_additional_file.txt /u01
[final-build-commands]
LABEL owner="middleware team"
--additionalBuildFilesこのオプションは、イメージ・ビルド・コマンドに追加のファイルを提供する方法を提供します。 提供されたすべてのファイルおよびディレクトリは、ビルド・コンテキストのfilesサブフォルダに直接コピーされます。
これらのファイルをイメージに取り込むには、additionalBuildCommandsオプションを使用して追加のビルド・コマンドを指定する必要があります。 COPYやADDなどのビルド・コマンドを使用してこれらのファイルにアクセスするには、フォルダ・プレフィクスfiles/で元のファイル名を使用する必要があります。 たとえば、元のファイルが--additionalBuildFiles /scratch/test1/convenience.shとして提供された場合、--additionalBuildCommandsで提供されているDockerビルド・コマンドCOPYはCOPY --chown=oracle:oracle files/convenience.sh /my/internal/image/locationのようになります。
Image Toolはマルチ・ステージ・ビルドを使用するため、ビルド・コマンド(COPYなど)をDockerfileの適切なセクションに配置することが重要です。このセクションは、ビルドでファイル)。 たとえば、ファイルが最終イメージで必要であり、インストールまたはドメインの作成のステップでは必要ない場合は、final-build-commandsセクションを使用して、イメージ・ビルドの最終段階でCOPYコマンドが発生するようにします。 または、ドメインの作成前にファイルがOracle Homeを変更する必要がある場合は、after-fmw-installまたはbefore-wdt-commandセクションを使用します。
--latestPSUlatestPSUオプションは引き続きCREATEおよびREBASEオプションでサポートされますが、UPDATEオプションで使用するために非推奨になりました。 パッチの数とそのサイズのため、latestPSUを既存のイメージの更新として使用すると、イメージ「大幅に」のサイズが大きくなる可能性があり、お薦めしません。
--recommendedPatchesrecommendedPatchesオプションは引き続きCREATEおよびREBASEオプションでサポートされますが、UPDATEオプションで使用するために非推奨になりました。 パッチの数とそのサイズのため、recommendedPatchesを既存のイメージの更新として使用すると、イメージ「大幅に」のサイズが大きくなる可能性があり、お薦めしません。
--targetデフォルトでは、イメージ内に生成されたWLSドメインは、Oracle WebLogic Serverで定義されているベスト・プラクティスを使用します。 targetオプションを使用すると、生成されたドメインがターゲット環境で簡単に使用できるように、デフォルトを切り替えることができます。 たとえば、--target OpenShiftオプションは、グループ・アクセス権がユーザー・アクセス権と一致するように、ドメイン・ディレクトリ内のファイル・アクセス権を変更します。
| ターゲット | デフォルト・ファイル権限 | デフォルトのファイル所有権 |
|---|---|---|
Default |
rwxr-x--- |
oracle:oracle |
OpenShift |
rwxrwx--- |
oracle:root |
指定すると、--resourceTemplatesで指定されたファイルが上書きされます。 既知のトークンの場合、プレースホルダーは次の表に従って値に置き換えられます。
ノート: プレースホルダーは、{{imageName}}や{{{imageName}}}などのMustache構文に従う必要があります。
| トークン名 | 値の説明 |
|---|---|
domainHome |
--wdtDomainHomeを使用してイメージ・ツールに提供される値。 |
domainHomeSourceType |
PersistentVolume (デフォルト)、--wdtModelOnlyの場合はFromModel、またはWDTを使用してイメージにドメインが作成されている場合はImage。 |
imageName |
--tagを使用してイメージ・ツールに提供される値。 |
modelHome |
--wdtModelHomeを使用してイメージ・ツールに提供される値。 |
イメージ・ツールに渡されたすべての引数をファイルに保存し、そのファイルをパラメータとして使用できます。
たとえば、build_argsというファイルを作成します:
update
--fromImage weblogic:12.2.1.3.0
--tag wls:122130-patched
--patches 123456
--user acmeuser@mycompany.com
--passwordEnv MYPWD
これは、次のようにコマンドラインで使用します:
$ imagetool @/path/to/build_args
ノート: --passwordのかわりに--passwordEnvまたは--passwordFileを使用します。
最新のPSUを適用してsample:1.0という名前のイメージを更新し、sample:1.1としてタグ付けします。
$ imagetool update --fromImage sample:1.0 --tag sample:1.1 --latestPSU --user test@xyz.com --passwordEnv MYVAR
選択したパッチが適用されたsample:1.0という名前のイメージを更新し、sample:1.1としてタグ付けします。
$ imagetool update --fromImage sample:1.0 --tag sample:1.1 --user test@xyz.com --password hello --patches 12345678,87654321
WDTを使用して新しいWebLogicドメインを作成し、mydomain:1としてタグ付けして、wls:12.2.1.3.0という名前のイメージを更新します。 WDTインストーラは、キーwdt_ 1.1.1を使用してキャッシュからアクセスします。 使用するモデルおよびアーカイブは、wdtというサブフォルダにあります。
$ imagetool update --fromImage wls:12.2.1.3.0 --tag mydomain:1 --wdtArchive ./wdt/my_domain.zip --wdtModel ./wdt/my_domain.yaml --wdtVersion 1.1.1
WDTのdeployAppsを使用して、新しいアプリケーションであるWLS Metrics Exporterをデプロイします。 使用するモデルおよびアーカイブは、wdtというサブフォルダにあります。
$ imagetool update --tag mydomain:2 --fromImage mydomain:1 --wdtOperation deploy --wdtArchive ./wdt/exporter_archive.zip --wdtModel ./wdt/exporter_model.yaml --wdtVersion 1.1.1