createコマンドは、特定のベースOSイメージからWebLogicコンテナ・イメージをビルドするのに役立ちます。 この機能には、多数のオプションのパラメータがあります。 コマンドに必要なオプションは、次の表でマークされています。
ノート: WebLogic Image Toolは、スタック・パッチ・バンドル(SPB; Doc ID 2764636.1を参照)をサポートしません。これは、SPBはパッチではなく、すべてのPSUおよび推奨CPUおよびSPUパッチをWebLogic Serverインストールに適用するメカニズムであり、--recommendedPatchesオプションを指定してImage Tool createコマンドを起動するのと同様です。
Usage: imagetool create [OPTIONS]
| パラメータ | 定義 | デフォルト |
|---|---|---|
--tag |
(必須) 最終ビルド・イメージのタグ。 例: store/oracle/weblogic:12.2.1.3.0 |
|
--additionalBuildCommands |
追加のビルド・コマンドを使用したファイルへのパス。 詳細については、「追加情報」を参照してください。 | |
--additionalBuildFiles |
additionalBuildCommandsで必要な追加ファイル。 ビルド・コンテキストにコピーする必要があるファイルのカンマ区切りリスト。 「追加情報」を参照してください。 |
|
--builder, -b |
Dockerfileを処理する実行ファイル。 パスにない場合は、実行可能ファイルのフルパスを使用します。 | デフォルトはdockerで、設定する場合は環境変数WLSIMG_BUILDERの値に設定されます。 |
--buildNetwork |
イメージ・ビルド時のRUN命令のネットワーク・モード。 Docker buildについては、--networkを参照してください。 |
|
--chown |
JDK、FMW/WLSインストールなど、イメージ内のファイルの作成に使用されるuserid:groupid。ユーザーまたはグループがイメージに存在しない場合は、useradd/groupaddで追加されます。 |
oracle:oracle |
--docker |
(非推奨) Docker実行可能ファイルへのパス。 かわりに--builderを使用します。 |
docker |
--dryRun |
Dockerビルド実行をスキップし、Dockerfileをstdoutに出力します。 | |
--fromImage |
新しいイメージの作成時にベース・イメージとして使用するコンテナ・イメージ。 | ghcr.io/oracle/oraclelinux:8-slim |
--fromImageProperties |
--fromImageを説明するプロパティ。 指定しない場合、docker runを使用して--fromImageイメージが検査されます。 「カスタム・ベース・イメージ」を参照 |
|
--httpProxyUrl |
HTTPプロトコルのプロキシ。 例: http://myproxy:80またはhttp:user:passwd@myproxy:8080 |
|
--httpsProxyUrl |
HTTPSプロトコルのプロキシ。 例: https://myproxy:80またはhttps:user:passwd@myproxy:8080 |
|
--installerResponseFile |
1つ以上のカスタム・レスポンス・ファイル。 インストーラのレスポンス・ファイルへのパスのカンマ区切りのリスト。 Oracleサイレント・インストーラのデフォルトのレスポンスをオーバーライドします。 | |
--inventoryPointerFile |
カスタム・インベントリ・ポインタ・ファイルへのパス。 | |
--inventoryPointerInstallLoc |
インベントリ・ポインタ・ファイルのターゲットのロケーション。 | |
--jdkVersion |
インストールするサーバーJDKのバージョン。 | 8u202 |
--latestPSU |
最新のPatchSet Updateを検索して適用します。 | |
--opatchBugNumber |
OPatchのパッチ番号(OPatchへのパッチ適用)。 | 28186730 |
--packageManager |
ベース・イメージのオペレーティング・システムのデフォルトのパッケージ・マネージャをオーバーライドします。 サポートされる値: APK, APTGET, NONE, OS_DEFAULT, YUM, ZYPPER |
OS_DEFAULT |
--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 Updateおよび推奨パッチを検索して適用します。 これは、--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を使用するコマンド行で対話形式でパスワードを指定する必要があります。 |
|
--version |
インストーラのバージョン | 12.2.1.3.0 |
--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 |
--wdtRunRCU |
ドメインの作成時にRCUを実行するようにWDTに指示します。 | |
--wdtStrictValidation |
WDTバリデーション・メソッドには厳密なバリデーションを使用します。 モデルのみを使用している場合にのみ適用されます。 | false |
--wdtVariables |
WDT変数ファイルまたはファイルのカンマ区切りリスト。 | |
--wdtVersion |
使用するWDTバージョン。 | latest |
--additionalBuildCommandsこれは、Dockerビルド・ステップに追加のコマンドを提供するための拡張オプションです。
このパラメータの入力は、1つ以上の有効なセクションを含む単純なテキスト・ファイルです。 作成の有効なセクションは次のとおりです:
| セクション | 使用可能変数 | ビルド・ステージ | タイミング |
|---|---|---|---|
initial-build-commands |
なし | すべて | ルートとして、およびイメージ・ツール・アクションの前に。 |
package-manager-packages |
なし | すべて | ftp gzipなどのOSパッケージのリスト。行またはスペースで区切られます。 |
before-jdk-install |
JAVA_HOME |
中間(JDK_BUILD) | JDKがインストールされる前。 |
after-jdk-install |
JAVA_HOME |
中間(JDK_BUILD) | JDKのインストール後。 |
before-fmw-install |
JAVA_HOME ORACLE_HOME |
中間(WLS_BUILD) | Oracle Homeが作成される前。 |
after-fmw-install |
JAVA_HOME ORACLE_HOME |
中間(WLS_BUILD) | すべてのOracleミドルウェア・インストーラが終了した後。 |
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 |
最終イメージ | すべてのイメージ・ツール・アクションが完了した後、コンテナ・イメージが確定される直前。 DOMAIN_HOMEは、ビルド中にWDTが使用された場合にのみ使用できます。 |
ノート: 中間ステージで行われた変更は、手動でコピーしないかぎり最終イメージに繰り越されない場合があります。
イメージ・ツールは、Javaホーム、Oracle 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セクションを使用します。
--targetデフォルトでは、インストールされたミドルウェアはファイル・アクセス権をrwxr-x---にデフォルト設定します。 targetオプションを使用すると、生成されたドメインがターゲット環境で簡単に使用できるように、デフォルトを切り替えることができます。 たとえば、--target OpenShiftオプションは、グループ・アクセス権がユーザー・アクセス権と一致するように、ドメイン・ディレクトリ内のファイル・アクセス権を変更します。
| ターゲット | デフォルト・ファイル権限 | デフォルトのファイル所有権 |
|---|---|---|
Default |
rwxr-x--- |
oracle:oracle |
OpenShift |
rwxrwx--- |
oracle:root |
--fromImageProperties--fromImageを指定してデフォルトのベース・イメージをオーバーライドする場合、Image Toolでは、インストールされているオペレーティング・システムやバージョンなど、提供されているイメージに関する追加情報が必要です。 デフォルトでは、docker runを使用してイメージ・ツールによって追加情報が自動的に収集されます。 追加情報を手動で提供し、docker runステップを回避することが望ましい場合は、Javaプロパティ・ファイルを使用して、--fromImagePropertiesに追加情報を提供する必要があります。 ファイルは、キーと値のペアが=で区切られた行指向の形式である必要があります。 例えば:
packageManager=MICRODNF
__OS__ID="ol"
__OS__VERSION="8.10"
必須プロパティ:
| キー | 説明 | デフォルト |
|---|---|---|
packageManager |
すべてのCAPSのfromImageにインストールされているパッケージ・マネージャの名前。 DNF、MICRODNFおよびYUMと同様です |
YUM |
__OS__ID |
ID値は/etc/os-releaseにあります。 Oracle Linuxの場合は"ol"、BusyBoxの場合は"bb"のようになります。 |
|
__OS__VERSION |
/etc/os-releaseにあるVERSION値。 "8.10"のようになります。 |
追加プロパティ:
| キー | 説明 |
|---|---|
javaHome |
JDKがインストールされているロケーション。 "/u01/jdk"のようになります。 |
__OS__arch |
uname -mの出力。 amd64またはarm64のようになります。 |
指定すると、--resourceTemplatesで指定されたファイルが上書きされます。 既知のトークンの場合、プレースホルダーは次の表に従って値に置き換えられます。
ノート: プレースホルダーは、{{imageName}}や{{{imageName}}}などのMustache構文に従う必要があります。
| トークン名 | 値の説明 |
|---|---|
domainHome |
--wdtDomainHomeを使用してイメージ・ツールに提供される値。 |
domainHomeSourceType |
PersistentVolume (デフォルト)、--wdtModelOnlyの場合はFromModel、またはWDTを使用してイメージにドメインが作成されている場合はImage。 |
imageName |
--tagを使用してイメージ・ツールに提供される値。 |
modelHome |
--wdtModelHomeを使用してイメージ・ツールに提供される値。 |
イメージ・ツールに渡されたすべての引数をファイルに保存し、そのファイルをパラメータとして使用できます。
たとえば、build_argsというファイルを作成します:
create
--type wls
--version 12.2.1.3.0
--tag wls:122130
--user acmeuser@mycompany.com
--httpProxyUrl http://mycompany-proxy:80
--httpsProxyUrl http://mycompany-proxy:80
--passwordEnv MYPWD
これは、次のようにコマンドラインで使用します:
$ imagetool @/path/to/build_args
次のコマンドは、必要なすべてのJDK、WLSまたはFMW (WebLogicインフラストラクチャ)インストーラがキャッシュ・ディレクトリにダウンロードされていることを前提としています。 cacheコマンドを使用して設定します。
WebLogicインストーラ12.2.1.3.0、サーバーJDK 8u202および最新のPSUを適用して、sample:wlsという名前のイメージを作成します。
$ imagetool create --tag sample:wls --latestPSU --user testuser@xyz.com --password hello
前述のものと同じオプションを使用してsample:wdtという名前のイメージを作成し、WebLogic Deploy Toolingを使用してドメインを作成します。
$ imagetool create --tag sample:wdt --latestPSU --user testuser@xyz.com --password hello --wdtModel /path/to/model.json --wdtVariables /path/to/variables.json --wdtVersion 0.16
wdtVersionが指定されていない場合、ツールは最新リリースを使用します。
選択したパッチが適用されたsample:patchという名前のイメージを作成します。
$ imagetool create --tag sample:patch --user testuser@xyz.com --password hello --patches 12345678,p87654321
パッチ番号は'p'で始まる場合とされない場合があります。