IBM Cloud Container Registry(ICR)イメージからSSL通信と透過的暗号DBを設定コンテナ作成
※Db2 Community Edition DockerのイメージはdockerhubからIBM Cloud Container Registry(ICR)へ移行されました
-
Db2バージョン: latest(最新のバージョン)
※バージョン指定したい場合はDockerfileのFROMセクションに記載のタグのバージョンを修正してください -
WSL2環境のDockerを使用
-
Docker for Linux(Community Edition), docker-composeが導入済
-
WSL2ログインユーザーがdocker-composeコマンドをroot権限で実行可
-
Db2コンテナ作成はカレントディレクトリを
docker-compose.yaml
ファイルがある場所
下記ファイルがあること
- Dockerfile
- docker-compose.yaml
- db2.env
- addsslandencryptdb.sh
<comtainer_name> is up-to-date
が表示されることを確認
sudo docker-compose -f ./docker-compose.yaml up -d
※内部でインスタンス作成,DB作成,暗号設定ジョブが動いているので実行ログを確認して完了することを確認
sudo docker-compose -f ./docker-compose.yaml logs -f
docker-compose -f ./docker-compose.yaml exec db2 /bin/bash -c "su - tstdbi1"
実行コマンド
db2set -all
下記の通りになってること
[i] DB2_DYNAMIC_SSL_LABEL=ON
[i] DB2COMM=SSL,TCPIP
[g] DB2SYSTEM=<Container_ID>
db2 get dbm cfg
db2 get dbm cfg | grep SSL
db2 list db directory
db2 connect to TSTDB
db2 get db cfg for TSTDB
YES
となってること
db2 get db cfg for TSTDB | grep "Encrypted database"
マスターキーラベルが出力
db2 "select * from TABLE(SYSPROC.ADMIN_GET_ENCRYPTION_INFO())"
db2 terminate
exit
適用可能なDb2バージョンはIBM Cloud Container Registry(ICR)CLIを導入しないと確認できないようになっています。
導入方法は下記リンクをご参照ください。
適用可能なDb2バージョンの確認コマンドは下記
ibmcloud cr image-list --restrict db2_community/db2