8.1 ベストプラクティス

このセクションには、Dockerコンテナの展開のいくつかのヒントおよびベストプラクティスが含まれます。

  • NetIQでは、コンテナに使用するCPU量に制限を設定することをお勧めします。これは、docker runコマンドで--cpuset-cpusフラグを使用して実現できます。

  • コンテナの再起動ポリシーを設定するには、docker runコマンドで--restartフラグを使用します。障害時の再起動ポリシーを選択し、再起動の試みを5に制限することをお勧めします。

  • コンテナによって使用されるメモリに制限を設定するには、docker runコマンドで--memoryフラグを使用します。

  • 展開されたドライバのトレースファイルをバックアップする場合は、/config/idm/の下にトレースファイルを置くか、ボリューマイズされたフォルダにトレースファイルを手動でコピーします。

  • 任意の時点で実行可能なプロセス数に制限を設定するには、docker runコマンドで--pids-limitフラグを使用します。PID値を300に制限することをお勧めします。

  • Identity Managerエンジンコンテナでは、/procファイルシステムの/processディレクトリにあるenvironファイルを表示する場合は、docker runコマンドで--cap-add=SYS_PTRACEフラグを使用します。デフォルトでは、権限のほとんどが制限され、必要な権限のみが有効になります。詳細については、Dockerのマニュアルを参照してください。

  • コンテナが起動されるたびに使用できるように、サードパーティのjarファイルがボリュームマウントされていることを確認します。たとえば、ojdbc.jarがコンテナの/opt/netiq/idm/apps/tomcat/libディレクトリに存在する場合は、次のコマンドを使用してjarファイルをボリュームマウントする必要があります。

    -v /host/ojdbc.jar:/opt/netiq/idm/apps/tomcat/lib/ojdbc.jar

たとえば、コンテナを展開するために上記すべての引数を含む次のサンプルコマンドを実行します。

docker run -itd --cap-add=SYS_PTRACE --pids-limit<tune container pids limit> --memory=<maximum amout of memory container can use> --restart=on-failure:5 --cpuset-cpus=<CPUs in which to allow execution> --network=<connect a container to network> -v <bind mount a volume> --name=<assign a name to the container> <image name>