内容は次のとおりです。
Dockerは、ユーザーが分散アプリケーションをビルド、パッケージ、出荷および稼働することができるプラットホームです。Dockerのユーザーは、開発したアプリケーションおよびアプリケーションに依存するすべてのライブラリおよびファイルをひとつのDockerイメージにパッケージできます。
Dockerイメージは、様々なLinux環境に配布できる移植可能なアーチファクトです。配布されたイメージを使用してコンテナをインスタンス化し、同一のオペレーティング・システム上の別のコンテナで稼働中のアプリケーションから独立して、アプリケーションを稼働することができます。
オラクル社では、証明書の一部として、WebLogic Serverのためのイメージのビルドに使用される、Dockerfileおよびサポート・スクリプトをGitHub上でリリースしています。それらの公開されたファイルは、使用を開始するために役立つ例となります。WebLogic Serverイメージは、JDK 7または8、およびOracle WebLogic Server 12c (12.2.1)インストールを含むOracle Linuxイメージ7.0の拡張として構築されます。詳細は、「GitHubのDockerfileおよびスクリプトについて」を参照してください。
Dockerイメージ作成をサポートするために、オラクル社では、WebLogic Server 12.2.1をJDKバージョン、Oracle LinuxおよびRed Hat Linux OSバージョン、KernelバージョンおよびDockerバージョンとの様々な組合せを使用して動作保証しています。サポートされているWebLogic Server Dockerイメージの動作保証の詳細は、http://www.oracle.com/technetwork/middleware/ias/oracleas-supported-virtualization-089265.htmlを参照してください。
独自のWebLogic Server Dockerイメージを作成することができます。この作業を容易にするために、オラクル社では、開始の際にサンプルとして使用できるDockerfileおよびスクリプトをGitHubで公開しています。
カスタムのWebLogic Server Dockerイメージを作成する前提条件は、次の通りです。
サポートされているOracle LinuxまたはRed Hat Linuxベース・イメージ
GitHubから入手したDockerfileおよびスクリプト
Oracle WebLogic Server 12c (12.2.1) GenericインストーラまたはDeveloperインストーラ
対応するサポートされているJDK
WebLogic Server Dockerイメージのビルドおよび稼働を容易にするために、GitHubでDockerfileおよびサポート・スクリプトが公開されています。ディレクトリ全体をダウンロードして、Oracle WebLogic Serverイメージをビルドし、コンテナを開始してください。これらのファイルにアクセスするには、https://github.com/oracle/docker/tree/master/OracleWebLogic/へ移動します。段階的に手順を示すガイド付きのラボは、/wokshopsディレクトリを参照してください。
Dockerfileおよびスクリプトを使用すると、開発したイメージを拡張して、複数のホスト・オペレーティング・システムまたは仮想マシンで稼働する、開発環境および本番環境を含むクラスタ化および非クラスタ化のWebLogic Serverドメイン構成を作成できます。GitHubのDockerfileおよびスクリプトは、独自のDockerfileを記述しWebLogic Serverイメージをビルドするためのサンプルとして使用することのみを目的としています。
作成されるドメイン構成で実行中の各サーバーは、それぞれのDockerコンテナで稼働し、必要に応じ他のサーバーと通信できます。「DockerでのWebLogic Serverイメージのビルド」で説明するように、これ以外の構成およびアプローチも可能です。
2種類のWebLogic Server 12c (12.2.1)用のDockerfileが、GitHubの/OracleWebLogic/dockerfiles/12.2.1サブディレクトリから入手できます。
Dockerfile.developer – WebLogic Server開発用インストール・イメージをビルドします。
Dockerfile..generic – WebLogic Server汎用ドメイン・イメージをビルドします。
WebLogic Serverインストール・イメージのDockerfile
WebLogic Serverインストール・イメージを作成するDockerfileは、次の機能を実行します。
Oracle JDKイメージを拡張します
サイレント・モードで(WLS汎用/Developerインストーラ)を使用してWLSをインストールします
図1-1に、WebLogic Server Dockerイメージを示します。
WebLogic Serverインストール・イメージを作成した後に、それらを拡張してWebLogic Serverのベース・ドメインを構成することができます。
WebLogic Serverドメイン・イメージのDockerfile
WebLogic Serverドメイン・イメージを作成するDockerfileは、次の機能を実行します。
WebLogic Serverインストール・イメージを拡張します
WLSTスクリプトを呼び出して、WebLogic Serverドメインを構成します。ドメインには、管理サーバー、JMSサーバー、データ・ソースが1つずつあり、JAX-RS 2.0が有効化されます。
アプリケーション・イメージを作成するための追加のDockerfileがあります。このDockerfileは次のような機能を実行します。
ドメイン・イメージを拡張します
アプリケーションをOracle WebLogic Serverドメインにデプロイします
図1-2に、WebLogic Serverドメインおよびアプリケーション・イメージを示します。
Oracle WebLogic Serverドメイン・イメージを使用して、次の2つのタイプのコンテナを作成できます。
サポート・スクリプトは、WebLogic Server 12c (12.2.1) Dockerイメージの作成を助け、WebLogic Serverドメインの構成でイメージを拡張するサンプルとして使用されます。それらのスクリプトは、サブディレクトリ/OracleWebLogic/dockerfiles、/OracleWebLogic/samplesおよび/OracleWebLogic/samples/1221-domain/container-scriptsの下にあります。
表1-1に示すスクリプトは、WebLogic Serverインストール・イメージの作成およびDockerコンテナ内でのWebLogic Serverの開始の際に使用します。
表1-1 GitHubでサポートされているDockerのWebLogic Serverスクリプト
| スクリプト | 機能 |
|---|---|
|
WebLogic ServerインストールDockerfileの手順を使用してイメージをビルドします。 |
|
管理対象サーバー・コンテナ名を使用してマシンを作成するWLSTスクリプト。 |
|
管理サーバーを作成するWLSTスクリプト。 |
|
1つの管理サーバー、LMSサーバー、JSPサーバーおよびデータ・ソースのあるベース・ドメインを構成するWLSTスクリプト。 |
|
コンテナのノード・マネージャを起動し、 |
|
コンテナのノード・マネージャを起動し、 |
|
稼働中のすべてのコンテナを削除します。 |
|
すべてのゴースト・コンテナおよびゴースト・イメージを削除します。 |
WebLogic Serverでは、エージェント(ノード・マネージャ)を使用した運用システムである、マシンの概念を使用します。このマシン・リソースにより、管理サーバーで、管理対象サーバーを作成してドメインおよび/またはクラスタに割り当てることや、ドメインおよび/またはクラスタを拡張することや、アプリケーションおよびリソースを管理対象サーバーにデプロイすることができます。
コンテナ内のマシンを使用すると、新しいManaged Serverコンテナを起動することにより、動的クラスタを構成して、使用するクラスタを簡単にスケール・アップできます。WebLogic Server Scripting Tool (WLST)を使用すると、クラスタの処理能力をすばやく最適化することができます。ノード・マネージャの詳細は、「Oracle WebLogic Serverノード・マネージャの管理」、およびWLSTの使用方法の詳細は、「WebLogic Scripting Toolの理解」を参照してください。
Dockerコンテナにより、クラスタ化および非クラスタ化されたWebLogic Serverドメイン構成を作成できます。ドメイン内の各サーバーは、それ固有のDockerコンテナ内で稼働し、必要に応じて他のサーバーと通信できます。
図1-5に、DockerコンテナでのWebLogic Serverのクラスタ化を示します。
このトポロジのメリットは、次のとおりです。
従来のようなデプロイメントに適しています
Oracle WebLogic Serverドメイン・イメージからのコンテナのデプロイが容易です
クラスタのスケール・アップ、スケール・ダウンが容易です
軽量かつ繰返し可能で共有可能なWebLogic環境を探している開発者に最適です
連続的なデプロイメントに適しています
Dockerバイナリを除き、ホスト上に何もインストールまたは構成する必要がないため管理が容易です
コンテナ化されたアプリケーションとサービスのDocker方式の構成に一致する推奨トポロジは、すべてのリソース、共有ライブラリおよびデプロイメントを含むWebLogic Administration Serverのみを実行するように設計されたコンテナから構成されます。図1-6に示すように、Dockerイメージは、事前定義されたすべてのドメイン・リソース、アプリケーションおよびあらかじめデプロイされた共有ライブラリを含み、管理対象サーバーまたはクラスタは含みません。
このトポロジのメリットは、次のとおりです。
コンテナ化されたアプリケーションとサービスを構成するために、Dockerの推奨方式を使用します。
コンテナは、簡単に繰返し可能です。
各コンテナは、同じWebLogicドメインのインスタンスです。