brew install docker docker-machine
docker-machine create --driver virtualbox mqdev
eval $(docker-machine env mqdev)
docker run --env LICENSE=accept --env MQ_QMGR_NAME=QM1 \
--volume /mnt/sda1:/var/mqm --publish 1414:1414 ibmcom/mq
2016年12月9日金曜日
DockerでMQ環境を作る
DockerHubのibmcom/mqを使う。ファイルシステムとしてtmpfsは使えないのでこれを参考に/mnt/sda1に置き換える。
2015年11月21日土曜日
Dockerを使ってMac上にDB2境を準備する
DB2 Express-Cという無償で使えるDB2があるが、残念ながらMacはサポートされていない。
http://www-01.ibm.com/software/data/db2/express-c/download.html
そこでDockerを使って環境を作る。使ったソフトウェアは以下の通り。
ここまででMacからコンテナに50000番で接続できるようになった。後はDB2側で必要な設定をすればOK。ibmcom/db2express-cに書いてある通りサンプルDBを作ったり、デーモンとして起動したりできる。
デーモンとして起動
テスト用途ならコンテナの再起動でデータが消えても問題ないことが多いと思われるのでここで作業を終わりにするが、永続化が必要な場合は別途設定が必要。
http://www-01.ibm.com/software/data/db2/express-c/download.html
そこでDockerを使って環境を作る。使ったソフトウェアは以下の通り。
- Docker Machine 0.4.1
- Docker 1.8.3
- VirtualBox 5.0.10
インストール手順はいろんなところに書いてあるので割愛。VirtualBoxの仮想マシンを作成が完了した後はこんな感じ。
~ % docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM
default virtualbox Stopped
~ % docker-machine start default
Starting VM...
Started machines may have new IP addresses. You may need to re-run the `docker-machine env` command.
~ % eval "$(docker-machine env default)"
ここから先がDB2に関係する部分。使うのはibmcom/db2express-c。手順は以下の通り。docker pullで取得するサイズが大きい(1.7GB)のでしばらく時間がかかる。
~ % docker pull ibmcom/db2express-c
~ % docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
ibmcom/db2express-c latest 2abb3b6fc22c 6 months ago 1.705 GB
~ % docker run -it -p 50000:50000 -e DB2INST1_PASSWORD=db2inst1-pwd -e LICENSE=accept ibmcom/db2express-c:latest bash
ここまででDockerコンテナにログインできる。Macからコンテナに50000番ポートで接続するためにはVirtualBox上でのポートフォワーディングも必要。lsofでListenしていることを確認できる。
~ % VBoxManage controlvm default natpf1 "db2_pf,tcp,127.0.0.1,50000,,50000"
~ % lsof -P -i -n | grep 50000
サンプルDBの作成
$ su - db2inst1
$ db2start
$ db2sampl
デーモンとして起動
docker run -d -p 50000:50000 -e DB2INST1_PASSWORD=db2inst1-pwd -e LICENSE=accept ibmcom/db2express-c:latest db2start
テスト用途ならコンテナの再起動でデータが消えても問題ないことが多いと思われるのでここで作業を終わりにするが、永続化が必要な場合は別途設定が必要。
登録:
投稿 (Atom)
DockerでMQ環境を作る
DockerHubの ibmcom/mq を使う。ファイルシステムとしてtmpfsは使えないので これ を参考に/mnt/sda1に置き換える。 brew install docker docker-machine docker-machine create --drive...
-
WikipediaのHalloween Problem と このブログ の要約。 ハロウィーン問題はデータベースの更新処理をによって更新されたレコードのデータベース上の位置が変更されることによって、同じレコードが何度も更新されてしまう問題を指す。こんな名前なのは、ハロウィーン...
-
JVMにはインストゥルメンテーションという機能があって、実行中にバイトコードを書き換えることができる(元々は実行中のプログラムの計測のためのものらしい)。 https://docs.oracle.com/javase/jp/8/api/java/lang/instrument/...
-
アノテーションを使って処理するための機能が入っているのがjavax.annotation.processing。アノテーション処理をラウンドという単位に分けて段階的に処理を行う。各ラウンドではあるプロセッサーに定義された処理を行う。プロセッサーはアノテーションをもとにJavaソー...