IK.AM

@making's tech note


Payara MicroのDockerイメージを試す

🗃 {Middleware/AppServer/Payara}
🏷 Docker 🏷 Payara 🏷 Payara Micro 
🗓 Updated at 2015-05-25T13:56:18Z  🗓 Created at 2015-05-25T13:56:18Z   🌎 English Page

GlassFishのforkプロジェクトであるPayaraDockerイメージがDocker Hubに上がっていたので使ってみました。Dockerと相性の良さそうなPayara Microを試してみます。

Dockerfileを見ると、 Payara MicroのjarとデモアプリとしてPrimeFacesのショーケースのwarをダウンロードとして、後はよろしくって感じですね。まずはデモ用途という感じに見えます。

とりあえず、試してみましょう。なぜかlatestがないので、タグを指定します。 DockerfileCMDENTRYPOINTも書いてないので、-itをつけて/bin/bashを実行し、中に入ってみます。

$ docker run --rm -it -p 8080:8080 payaradocker/payara-micro:4.1.152.1.micro.oraclejdk8 /bin/bash
payara@5874b64d962d:/opt$

中に入りました。

payara@5874b64d962d:/opt$ ls
payara  payara-micro-4.1.152.1.jar  showcase-5.2.war

作業ディレクトリにはpayaraのjarとデモのwarがあります。

payara@5874b64d962d:/opt$ java -jar payara-micro-4.1.152.1.jar --deploy showcase-5.2.war

でPayaraが起動しました。http://[Docker Host]:8080/showcase-5.2にアクセスするとPrimeFacesのショーケースにアクセスできます。

通常、Dockerコンテナ内で作業はしないので、ワンライナーで実行するなら、

$ docker run --rm -it -p 8080:8080 payaradocker/payara-micro:4.1.152.1.micro.oraclejdk8 java -jar payara-micro-4.1.152.1.jar --deploy showcase-5.2.war

ですね。バックグラウンドで実行するなら、

$ docker run -d -p 8080:8080 payaradocker/payara-micro:4.1.152.1.micro.oraclejdk8 java -jar payara-micro-4.1.152.1.jar --deploy showcase-5.2.war

で。

この例だけだと、showcase-5.2.warしか試せない!ので、ローカルに実行させたいwarを置いて、ローカルディレクトリをDockerコンテナのマウントさせてみます。

例として、showcase-5.0.warをローカルをダウンロードして、これをDocker上のPayara Microで実行してみます。

$ cd ~/docker
$ wget http://repository.primefaces.org/org/primefaces/showcase/5.0/showcase-5.0.war
$ docker run --rm -it -p 8080:8080 -v ~/docker/:/tmp payaradocker/payara-micro:4.1.152.1.micro.oraclejdk8 java -jar payara-micro-4.1.152.1.jar --deploy /tmp/showcase-5.0.war

できた。http://[Docker Host]:8080/showcase-5.0にアクセスできます。

-vがポイントです。 これで、Dockerで簡単にwarを実行できますね。


ポータビリティーの観点でPayara(というかJava EEサーバー)がどうあるべきは検討の余地がありますが、 PayaraのこのDockerイメージはParayaをちょっと試したいときに便利。

Hazelcastのクラスタも試してみたい。


✒️️ Edit  ⏰ History  🗑 Delete