カテゴリ: Jakarta EE 更新日: 2025/12/13

Dockerで簡単!Jakarta EE開発環境の構築手順を初心者向けに解説

Dockerを使ったJakarta EE開発環境のセットアップ
Dockerを使ったJakarta EE開発環境のセットアップ

先生と生徒の会話形式で理解しよう

生徒

「先生、Jakarta EEの開発環境って、毎回パソコンにインストールするのが面倒なんですが、もっと楽な方法ってありますか?」

先生

「それならDockerを使うと便利ですよ。Jakarta EEのサーバーも一瞬で準備できます。」

生徒

「Dockerって難しいイメージがあるんですが、初心者でも使えるんですか?」

先生

「基本的な使い方を覚えれば、Jakarta EEの開発環境も驚くほど簡単に構築できますよ。手順を詳しく説明していきますね。」

1. Jakarta EEの開発にDockerを使うメリット

1. Jakarta EEの開発にDockerを使うメリット
1. Jakarta EEの開発にDockerを使うメリット

Jakarta EEの開発環境を構築する際、Dockerを使うと次のような利点があります。

  • 複雑なインストール作業が不要
  • 環境を壊すことなく実験ができる
  • 複数のサーバー(GlassFishやPayaraなど)を簡単に切り替え可能
  • チームで同じ環境を共有できる

Jakarta EEではGlassFishやPayaraなどのアプリケーションサーバーを利用しますが、それらもDockerで簡単に実行できます。

2. Jakarta EE開発に必要なDockerの基本知識

2. Jakarta EE開発に必要なDockerの基本知識
2. Jakarta EE開発に必要なDockerの基本知識

Dockerは、コンテナと呼ばれる仮想環境を利用してアプリケーションを実行します。Dockerを使えば、Jakarta EEのようなJavaアプリケーションサーバーを環境に影響なく使えるようになります。

以下はJakarta EEでよく使われるDocker関連の用語です。

  • Docker イメージ: Jakarta EEのサーバーやアプリを含む設計図
  • Docker コンテナ: イメージから実際に動かす仮想環境
  • Dockerfile: イメージを作るためのレシピ

3. Jakarta EE対応のDockerイメージを選ぶ

3. Jakarta EE対応のDockerイメージを選ぶ
3. Jakarta EE対応のDockerイメージを選ぶ

Jakarta EEで使える代表的なDockerイメージは以下の通りです。

  • glassfish:Jakarta EEのリファレンス実装サーバー
  • payara/server-full:商用向けの高性能サーバー
  • wildfly:Red Hatが開発しているJakarta EE対応サーバー

ここでは、公式のGlassFishを使ってDocker環境を構築する手順を紹介します。

4. DockerでGlassFish環境をセットアップする手順

4. DockerでGlassFish環境をセットアップする手順
4. DockerでGlassFish環境をセットアップする手順

まずはGlassFishを動かすためのDockerコマンドを実行してみましょう。


docker run -d -p 8080:8080 -p 4848:4848 --name jakartaee-glassfish glassfish

このコマンドの意味は以下の通りです。

  • -d:バックグラウンドで実行
  • -p:ホストとコンテナのポートを接続
  • --name:コンテナに名前をつける

ブラウザで http://localhost:8080 にアクセスすると、GlassFishのトップページが表示されます。

5. Jakarta EEアプリケーションのデプロイ方法

5. Jakarta EEアプリケーションのデプロイ方法
5. Jakarta EEアプリケーションのデプロイ方法

GlassFishではWARファイルを管理画面からアップロードすることでJakarta EEアプリケーションをデプロイできます。

GlassFishの管理コンソールは http://localhost:4848 にアクセスすると開けます。

管理画面で「アプリケーション」からWARファイルをアップロードすればすぐに動作確認ができます。

6. Docker ComposeでJakarta EE開発環境を一括管理

6. Docker ComposeでJakarta EE開発環境を一括管理
6. Docker ComposeでJakarta EE開発環境を一括管理

複雑な設定を毎回書くのが面倒な場合は、docker-compose.ymlを使うと便利です。


version: '3'
services:
  glassfish:
    image: glassfish
    ports:
      - "8080:8080"
      - "4848:4848"

上記のファイルを作成してから、以下のコマンドを実行すると一括で環境が起動します。


docker-compose up -d

7. Jakarta EE開発におけるDockerの活用ポイント

7. Jakarta EE開発におけるDockerの活用ポイント
7. Jakarta EE開発におけるDockerの活用ポイント

Jakarta EEをDockerで開発する際のコツをまとめておきます。

  • IDE(EclipseやIntelliJ)と連携してホットデプロイ環境を作る
  • ソースコードはホスト側に置き、コンテナとマウントして開発
  • データベース(MySQLやPostgreSQL)もDockerで連携可能
  • 複数のバージョンのGlassFishを切り替えてテストできる

Jakarta EEの開発にDockerを取り入れることで、環境構築の時間を大幅に短縮できます。特に初心者にとっては、失敗してもすぐに作り直せるのが大きな魅力です。

8. Jakarta EE学習者におすすめのDocker活用法

8. Jakarta EE学習者におすすめのDocker活用法
8. Jakarta EE学習者におすすめのDocker活用法

Jakarta EEの学習を始めたばかりの方におすすめなのは、以下の使い方です。

  • GitHubからWARファイルをダウンロードしてデプロイしてみる
  • ローカルのJavaコードをビルドしてWARを作成し、GlassFishにデプロイ
  • 複数のアプリケーションを同時にテストする

最初は手動で操作して慣れたら、Docker Composeを使って効率的な運用を目指しましょう。

まとめ

まとめ
まとめ

Dockerを活用したJakarta EE開発環境の構築は、従来のローカルインストールに比べて圧倒的に効率が良く、初心者でも短時間で安定したサーバー環境を用意できる非常に便利な方法です。この記事で学んだように、DockerはGlassFishやPayara、WildFlyといったJakarta EE対応サーバーを手軽に起動でき、環境構築にかかる時間と手間を大幅に削減できます。特に、複数のサーバーを試したい場合や、設定を壊してしまうリスクを避けたいときにDockerはとても相性が良く、コンテナを削除すればすぐに綺麗な状態へ戻せるというメリットがあります。 また、Dockerの基本概念であるイメージ・コンテナ・Dockerfileを理解することで、自分のアプリケーションを自由にカスタマイズして動かす環境を構築できるようになります。Jakarta EE学習においても、GlassFishの管理コンソールを使用したWARファイルのデプロイ操作や、Docker Composeを使った複数サービスの起動など、実践的な開発スキルに直結する知識が身につきます。特にDocker Composeは、複数のJakarta EEアプリケーションやデータベースと連携する大規模環境でも有効で、学んでおくと今後の開発効率が大きく向上します。 Jakarta EEを使い始めたばかりの方にとって、Dockerは非常に敷居の低いツールでありながら、実務レベルの開発環境にも通用する強力な手段です。ここで紹介した基本的な操作に慣れていけば、GlassFishに限らず、PayaraやWildFlyといった他のJakarta EE対応サーバーも同様の手順で扱えるようになります。さらに、ホスト側のソースコードとコンテナをマウントしてホットデプロイを行う設定や、データベースを含めた複合構成など、より高度な開発スタイルにも挑戦できます。 以下では、Dockerfileを使ってJakarta EEアプリケーションを自動デプロイする簡単なサンプルを紹介します。これを応用すれば、自分だけのJakarta EE環境を構築し、学習・開発をスムーズに進めることができます。

サンプルコード:Jakarta EEアプリを自動デプロイするDockerfile


FROM glassfish:latest

COPY myapp.war /opt/payara/deployments/

EXPOSE 8080 4848

CMD ["asadmin", "start-domain", "-v"]

このDockerfileでは、GlassFishイメージをベースにWARファイルをコピーし、コンテナ起動時にアプリケーションが自動デプロイされる仕組みを作っています。Dockerfileを利用することで、環境構築だけでなくデプロイ作業も自動化できるため、Jakarta EEの学習効率と開発スピードが大幅に向上します。さらに、Docker Composeと併用することで、GlassFishとデータベースを同時に起動するマルチコンテナ構成も簡単に扱えるようになり、より実践的なアプリケーション開発に役立ちます。 開発者は環境構築の手間から解放され、アプリケーションのコードに集中できるようになるため、DockerはJakarta EE学習における非常に強力な味方と言えるでしょう。これからJakarta EEを本格的に学びたい方にとって、Dockerを使いこなすことは大きな武器となります。

先生と生徒の振り返り会話

生徒

「DockerでJakarta EEの環境がこんなに簡単に作れるとは知りませんでした!毎回GlassFishをインストールするよりずっと楽ですね。」

先生

「そうなんだよ。Dockerを使えば、必要な環境をすぐに作れて、壊してしまってもすぐ復元できるから、学習にも最適なんだ。」

生徒

「Docker Composeで複数のサービスを一括管理できるのも便利ですね。データベースと一緒に動かせるのはありがたいです。」

先生

「そのとおり。Jakarta EEの実践的な開発ではサーバーとDBを同時に動かすことが多いから、Composeを覚えると一気に効率が上がるよ。」

生徒

「Dockerfileで自動デプロイできるのもすごいです。自動化できると開発が本当に楽になりますね!」

先生

「その気づきは大事だよ。これからアプリ開発を進める中で、Dockerを活用した自動化は必ず役立つから、ぜひ実践していこう。」

カテゴリの一覧へ
新着記事
New1
Play Framework
Play Frameworkでフォームデータをコントローラで扱う方法を完全解説|Java初心者向けコントローラ入門
New2
Jakarta EE
Jakarta EE JSPにおけるJSTLとスクリプトレットの違いと使い分けを初心者向けに徹底解説
New3
Play Framework
Play Frameworkでクエリパラメータをコントローラで処理する方法を完全解説|Java初心者向け入門
New4
Play Framework
Play FrameworkとSpring Bootの違いを徹底比較!初心者でもわかるJavaフレームワーク入門
人気記事
No.1
Java&Spring記事人気No1
Jakarta EE
Jakarta EEのリリースサイクルとバージョンの進化をやさしく解説!
No.2
Java&Spring記事人気No2
Jakarta EE
Jakarta サーブレットのHttpServletRequestを徹底解説!初心者でもわかる基本操作と使い方
No.3
Java&Spring記事人気No3
Jakarta EE
Jakarta EEとSpringの比較|どちらを選ぶべきか?初心者向けに徹底解説!
No.4
Java&Spring記事人気No4
Jakarta EE
Jakarta EEとJava EEアプリの互換性を完全解説!移行で困らないための基礎知識
No.5
Java&Spring記事人気No5
Jakarta EE
Jakarta EE JSPでJSTL SQLタグを使った簡易データベースアクセスをやさしく解説
No.6
Java&Spring記事人気No6
Jakarta EE
Jakarta EE JSPにおけるJSTL国際化タグ(fmt:message)の使い方を初心者向けに完全解説
No.7
Java&Spring記事人気No7
Jakarta EE
Jakarta EE JSPでJSTLを使ったJSONやREST APIレスポンス処理を初心者向けにやさしく解説
No.8
Java&Spring記事人気No8
Play Framework
Play Frameworkでリクエストデータの受け取り方を完全解説|Java初心者向けコントローラ入門