Linux システムへの Db2 Community Edition Docker イメージのインストール

Db2® Community Edition を使用すると、ビジネスの運用および分析のワークロードを処理するアプリケーションを迅速に開発、テスト、およびビルドできます。

このタスクについて

この手順を使用して、以下のいずれかの 64 ビット Linux デスクトップ環境に Db2 11.5.4 Community Edition の Docker イメージをインストールできます。
  • Ubuntu バージョン 16.04 長期サポート (LTS)、18.04 (LTS)、18.10、19.04、
  • CentOS バージョン 7.1 以上
  • Fedora バージョン 28 または 29
  • Debian バージョン 9 または 10
Db2 Community Edition Docker イメージには、以下の使用制限があります。
  • メモリー制限: 16 GB
  • コア制限: 4 コア

プロシージャー

  1. コマンド・ラインから、Docker イメージの新規ディレクトリーを作成します。
    mkdir Docker
  2. 以下のコマンドを入力して、このディレクトリーに移動します。
    cd Docker
    注: Docker は、資格情報の暗号化されていない保管に構成ファイル config.jsonを使用します。 その結果、ユーザー名とパスワードを入力する前に、WARNING: Error loading config file.... というメッセージが表示され、その後に config.json ファイルの予期されるデフォルトのロケーションが表示されます。

    このメッセージが表示されても、資格情報を入力して Docker 環境にアクセスすることはできます。 ログインすると、Docker は config.json ファイルを作成し、資格情報をデフォルトのロケーションにあるファイルに保存します。 Docker 資格情報のセキュア・ストレージの作成については、 docker login を参照してください。

  3. ご使用の Docker コンテナーにログインします。
    sudo docker login
  4. ICR から Db2 Docker イメージをプルします。
    docker pull icr.io/db2_community/db2
  5. Db2 Community Edition イメージ用の環境変数ファイル .env_listを作成します。
    vi .env_list
  6. 以下の内容を環境変数ファイルに貼り付けます。
    LICENSE=accept
    DB2INSTANCE=db2inst1
    DB2INST1_PASSWORD=password
    DBNAME=testdb
    BLU=false
    ENABLE_ORACLE_COMPATIBILITY=false
    UPDATEAVAIL=NO
    TO_CREATE_SAMPLEDB=false
    REPODB=false
    IS_OSXFS=false
    PERSISTENT_HOME=true
    HADR_ENABLED=false
    ETCD_ENDPOINT=
    ETCD_USERNAME=
    ETCD_PASSWORD=
    説明
    • LICENSE は、このイメージに含まれる Db2 ソフトウェアの契約条件に同意します。
    • DB2INSTANCE は Db2 インスタンス名を指定します。
    • DB2INST1_PASSWORD は、 Db2 インスタンスのパスワードを指定します。
    • DBNAME は、指定された名前で初期データベースを作成します (データベースが必要ない場合は空のままにします)
    • BLU は、 Db2 インスタンスの BLU Acceleration を使用可能 (true) または使用不可 (false) に設定します。
    • ENABLE_ORACLE_COMPATIBILITY は、インスタンスの Oracle 互換性を有効 (true) または無効 (false) に設定します
    • より高い Db2 レベルで新規コンテナーを実行している既存のインスタンスがある場合は、UPDATEAVAIL を YES に設定できます。
    • TO_CREATE_SAMPLEDB は、サンプル (定義済み) データベースを作成します (true)
    • REPODB は、Data Server Manager リポジトリー・データベースを作成します (true)
    • IS_OSXFS は、オペレーティング・システムを macOS として認識します (true)
    • PERSISTENT_HOME はデフォルトで、true に設定されており、Docker for Windows を実行している場合にのみ false として指定する必要があります
    • HADR_ENABLED は、インスタンスの Db2 HADR を構成します (true)。 以下の 3 つの環境変数は、HADR_ENABLED が true に設定されていることに依存します。
      • ETCD_ENDPOINT は、ユーザー自身が指定した ETCD キー値ストアを指定します。 コンマ (スペースなし) を区切り文字としてエンドポイントを入力します。 HADR_ENABLED が true に設定されている場合、この環境変数が必要です。
      • ETCD_USERNAME は、ETCD のユーザー名資格情報を指定します。 空のままにすると、 Db2 インスタンスが使用されます。
      • ETCD_PASSWORD は、ETCD のパスワード資格情報を指定します。 空のままにすると、 Db2 インスタンス・パスワードが使用されます。
  7. ファイルを保存するには、ESCAPE (ESC) を押して、以下を入力します。
    :wq!
  8. 以下のコマンドを入力して実行し、Docker コンテナーに入ります。
    docker run -h db2server --name db2server --restart=always --detach --privileged=true 
    -p 50000:50000 --env-file .env_list -v /Docker:/database icr.io/db2_community/db2
    ここで、
    -h は、 db2server という名前を Docker コンテナーに割り当てます。
    -p は、使用するポート番号を指定します。
    --privileged は、特権モードでコンテナーを開始します。
    -v は、 Db2 Docker イメージに使用されるボリュームを定義しています。
  9. 以下のコマンドを入力して、 Docker コンテナー内の実行中の Db2 インスタンスにアクセスします。
    docker exec -ti db2server bash -c "su - db2inst1"
    ここで、 db2inst1 は、 .env_list ファイル内の DB2INSTANCE 変数に関連付けられた値です。
  10. アクティブ・インスタンス内に Db2 データベースを作成できるようになりました。