CORBAサービスベアイメージの作成の流れを以下に示します。
Dockerイメージの作成環境で以下の手順に従い、CORBAサービスベアイメージを作成します。CORBAサービスベアイメージのサイズは、約2.4GBです。
CORBAサービスベアイメージ作成に必要な資材の準備
CORBAサービスベアイメージの作成に必要な以下の資材を、Dockerイメージ作成環境に用意します。
Dockerfile
CORBAサービスをインストールするコンテナを作成するためのDockerイメージを作成するDockerfileを作成し、ディレクトリ"/docker"に配置してください。
作成するDockerfileの内容については、「A.3.1 Dockerfile」を参照してください。
CORBAサービスインストール資材
本製品のサーバパッケージDVD
本製品のサーバパッケージDVDを、ディレクトリ"/docker/iaps/"にマウントしてください。
以下は、ディレクトリ"/docker/iaps/"を作成してマウントする例です。
# mkdir -p /docker/iaps # mount -t iso9660 -o loop /dev/cdrom /docker/iaps
インストールパラメーターCSVファイル
CORBAサービスを、本製品のサイレントインストール機能を使用してインストールする場合、インストールパラメーターCSVファイル(corba.csv)を作成し、ディレクトリ"/docker/"に配置してください。
作成するインストールパラメーターCSVファイルについては、「A.3.2 インストールパラメーターCSVファイル」を参照してください。
UpdateAdvisor(ミドルウェア)インストール資材
以下の3種類の資源をダウンロードし、ディレクトリ"/docker/work/"に格納してください。
UAMLINMW.tar.Z
UpdateAdvisor(ミドルウェア)インストールモジュール(Linux版)
linprdchk.tar.Z
修正適用管理簿設定ファイル(Linux版)
TnnnnnnLX-mm.tar.Z
修正ファイル(適用する修正群全て)
UpdateAdvisor(ミドルウェア)インストール資材の詳細は、「UpdateAdvisor(ミドルウェア)のヘルプ」を参照してください。
その他の資材
Dockerコンテナを起動したときのホスト名はランダムな名前になるため、Dockerコンテナのホスト名をInterstageの定義情報に反映する必要があります。そのためのシェルスクリプト、unitファイルを作成します。
ホスト情報変更用シェルスクリプト
ホスト名を変更するために、Dockerコンテナの起動時に実行するホスト情報変更用シェルスクリプト(chhostname.sh)を作成し、ディレクトリ"/docker/interstage/backup_restore"に格納してください。
ホスト情報変更用シェルスクリプトについては、「A.3.3 ホスト情報変更用シェルスクリプト」を参照してください。
Red Hat OpenShiftのlivenessProbe用ファイル
Red Hat OpenShiftのlivenessProbeとして実行するスクリプト(probe.sh)を作成し、ディレクトリ"/docker/interstage/probe"に格納してください。
Red Hat OpenShiftのlivenessProbe用シェルスクリプトについては、「A.3.4 Red Hat OpenShiftのlivenessProbe用シェルスクリプト」を参照してください。
unitファイル
Interstage起動前にホスト情報変更用シェルスクリプトを実行するためのunitファイル(FJSVisas_start.service)と、Interstage起動後にInterstageのlivenessProbeを開始するためのunitファイル(FJSVisas_inspect_start.service)を作成し、ディレクトリ"/docker/unitfiles/"に格納してください。
unitファイルについては、「A.3.5 unitファイル」を参照してください。
CORBAサービスベアイメージの作成
docker buildコマンドを実行し、「手順1-1」で作成したDockerfileからDockerイメージを作成します。
以下は、ディレクトリ"/docker/"に配置したDockerfileを使用して、イメージ名"tmpcorbaimage"のDockerイメージを作成する場合の例です。
# docker build -t tmpcorbaimage /docker
注意
Dockerイメージをビルド中、Interstageのインストールフェーズにおいて、以下のメッセージや警告が出力される場合がありますが、無視してください。
Failed to get D-Bus connection: Operation not permitted
warning: %post(FJSVod-14.0.0-1.0.x86_64) scriptlet failed, exit status 1
warning: %post(FJSVisgui-12.0-0.0.x86_64) scriptlet failed, exit status 1
なお、本手順実行後は、Dockerイメージ作成環境にマウントした本製品のサーバパッケージDVDはアンマウント可能です。
# umount /docker/iaps
「手順2-1」で作成したDockerイメージから、--privilegedオプションを指定しDockerコンテナを作成します。
以下は、docker runコマンドを使用して、イメージ名"tmpcorbaimage"のDockerイメージから、コンテナ名"tmpcorbabare"のコンテナを作成する場合の例です。
# docker run --privileged --name tmpcorbabare -di tmpcorbaimage
「手順2-2」で作成したDockerコンテナ内で、UpdateAdvisor(ミドルウェア)をインストールします。
「手順1-3」で用意したUpdateAdvisor(ミドルウェア)インストールモジュール、修正適用管理簿設定ファイルをDockerコンテナ上のディレクトリ"/work/"にコピーし、UpdateAdvisor(ミドルウェア)インストールモジュールに同梱されたソフトウェア説明書とヘルプに従い、Dockerコンテナ上でUpdateAdvisor(ミドルウェア)のインストールを実施してください。
以下は、コンテナ名"tmpcorbabare"のDockerコンテナに対し、docker cpコマンドを使用してUpdateAdvisor(ミドルウェア)と修正適用管理簿設定ファイルをコピーし、UpdateAdvisor(ミドルウェア)をインストールする場合の例です。
# docker cp /docker/work/UAMLINMW.tar.Z tmpcorbabare:/work/ # docker cp /docker/work/linprdchk.tar.Z tmpcorbabare:/work/ # docker exec -it tmpcorbabare /bin/mkdir /work/uam # docker exec -it tmpcorbabare /bin/tar -xzf /work/UAMLINMW.tar.Z -C /work/uam # docker exec -it tmpcorbabare /work/uam/install.sh -s /work/linprdchk.tar.Z # docker exec -it tmpcorbabare /bin/rm -rf /work/uam /work/linprdchk.tar.Z /work/linprdchk.tar.Z
「手順2-2」で作成したDockerコンテナ内で、必要に応じて、本製品の修正ファイルを適用します。
「手順1-3」で用意した修正ファイル(適用する修正群全て)をDockerコンテナ上のディレクトリ"/work/"にコピーし、UpdateAdvisor(ミドルウェア)インストールモジュールに同梱されたソフトウェア説明書とヘルプに従い、Dockerコンテナ上で修正群の適用(uam add)を実施してください。
以下は、コンテナ名"tmpcorbabare"のDockerコンテナに対し、docker cpコマンドを使用して修正ファイル"TnnnnnnLX-mm.tar.Z"をコピーし、修正を適用する場合の例です。
# docker cp /docker/work/TnnnnnnLX-mm.tar.Z tmpcorbabare:/work/ # docker exec -it tmpcorbabare /opt/FJSVisas/bin/isservicestop.sh # docker exec -it tmpcorbabare /opt/FJSVfupde/bin/uam add -s -d /work/ -i TnnnnnnLX-mm # docker exec -it tmpcorbabare /bin/rm -rf /work/TnnnnnnLX-mm.tar.Z
docker commitコマンドを実行し、「手順2-2」で作成したDockerコンテナを元に、CORBAサービスベアイメージを作成します。
以下は、コンテナ名"tmpcorbabare"のコンテナを元に、イメージ名"corbabareimage:1.0"のCORBAサービスベアイメージを作成する場合の例です。
# docker commit tmpcorbabare corbabareimage:1.0
コンテナ名"tmpcorbabare"のコンテナを停止し、削除します。
# docker stop tmpcorbabare # docker rm tmpcorbabare