LoginSignup
2
4

More than 5 years have passed since last update.

検証用に素のWeblogic環境をDockerで立ち上げる方法(12.2.1.1以降)

Last updated at Posted at 2016-11-24

WebLogic 12cの環境をとりあえず使ってみたい方向けに、2016年11月現在での方法を紹介します。本記事は12.2.1.1以降に対応しています。12.2.1以前はこちらの記事をどうぞ。

前提:
* GitとDockerが使える環境が既にある
* LinuxかMacを使っている (Windowsの場合は、適宜読み替えができる)

参考:
https://github.com/oracle/docker-images/tree/master/OracleWebLogic/dockerfiles/12.2.1.2

1. 必要なものをダウンロード

Oracle社公式のDockerイメージ

$ git clone --depth 1 https://github.com/oracle/docker-images
$ export WLS_DOCKER_DIR=`pwd`/docker-images

以下、docker-images/のパスを$WLS_DOCKER_DIRと表記します。

Java 8

  • JavaのOTNサイトにて、利用許諾確認してダウンロード
  • Linux x64版のJava8(マイナーバージョンは不問)
  • $WLS_DOCKER_DIR/OracleJava/java-8に配置

WebLogic

  • WebLogicのOTNサイトにて、利用許諾確認してLinux x64版をダウンロード
  • 12.2.1.1以降
  • 「Quick Installer for Mac OSX, Windows and Linux」でも「Generic」でも良い
  • $WLS_DOCKER_DIR/OracleWebLogic/dockerfiles/バージョン番号に配置
  • MD5チェックサムを、上記ディレクトリ内の*.downloadと比較して確認

2. Java Dockerイメージのビルド

$ cd $WLS_DOCKER_DIR/OracleJava/java-8
$ sh build.sh
...
Successfully built 4f40dfabddcf

3. WebLogic Dockerイメージのビルド

Quick Installerの場合 (12.2.1.2の例)

$ cd $WLS_DOCKER_DIR/OracleWebLogic/dockerfiles
$ sh buildDockerImage.sh -v 12.2.1.2 -d -s
...
Successfully built 4e556102dd5f

  WebLogic Docker Image for 'developer' version 12.2.1.2 is ready to be extended: 

    --> oracle/weblogic:12.2.1.2-developer

  Build completed in 406 seconds.

Genericの場合 (12.2.1.2の例)

$ cd $WLS_DOCKER_DIR/OracleWebLogic/dockerfiles
$ sh buildDockerImage.sh -v 12.2.1.2 -g -s
...
Successfully built 5ddedc69755d

  WebLogic Docker Image for 'generic' version 12.2.1.2 is ready to be extended: 

    --> oracle/weblogic:12.2.1.2-generic

  Build completed in 545 seconds.

「md5sum」がない環境でも実行できるよう、-sをつけてチェックサム比較処理を回避しています。

4. WebLogic管理サーバーの起動

Quick Installerの場合 (12.2.1.2の例)

$ docker run -d --name=wlsadmin -p 8001:8001 oracle/weblogic:12.2.1.2-developer

Genericの場合 (12.2.1.2の例)

$ docker run -d --name=wlsadmin -p 8001:8001 oracle/weblogic:12.2.1.2-generic

管理サーバーの管理ポートが8001のため、Docker Machineのポート8001で、管理コンソールなどにアクセスできるようにしています。

12.2.1までは管理パスワードを指定できていたのですが、12.2.1.1以降では自動生成されたものが強制的に適用されます。現在のところ、パスワードを任意の文字にする方法は無いようです。このため、コンテナのログからパスワードを調べます。

$ docker logs wlsadmin | grep password
cat: date: No such file or directory
      ----> 'weblogic' admin password: d41d8cd9
admin password  : [d41d8cd9]
*  password assigned to an admin-level user.  For *

上記の例の場合、管理コンソールのパスワードはd41d8cd9となります。

5. 検証

管理コンソール

Docker Machine以外の環境からアクセスする場合は、localhostをDocker Machineのホスト名に置き換えてください。

開発モードとなっています。

コンソールアクセス

oracleユーザーでコンテナにログインして、WLSTなどのコマンドを検証できます。

$ docker exec -it wlsadmin bash

ファイルをアップロード

Docker Machineからコンテナへ、WLSTスクリプトやバイナリなどをコピーできます。

$ docker cp /path_in_dockermachine/SomeFile.zip wlsadmin:/path_in_container/

再起動

WebLogicサーバーの再起動は、Dockerコンテナの再起動で実施します。

$ docker stop wlsadmin
$ docker start wlsadmin

6. 片付け

$ docker stop wlsadmin
$ docker rm wlsadmin

注意点

Oracle製品をプロジェクトに含んだ状態でDockerイメージを公開すると、利用許諾違反となります。また、利用許諾承認プロセスが組み込めないため、DockerHubにWebLogicのビルド済みイメージが公開される可能性は無いようです。レジストリサーバーを立てて、そこにビルド済みイメージを置いてDev/Ops間で共有するのは良いようです

参考:
There should be official Versions of Weblogic on DockerHub. #13
Put this on docker hub #109

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4