カテゴリ: 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のフォーム処理完全ガイド!メールアドレス・電話番号の形式チェック
New2
Jakarta EE
Jakarta EE JSFカスタムコンポーネントとは?初心者向けに基礎から徹底解説【Jakarta Faces・Webアプリ開発】
New3
Play Framework
Play Frameworkのフォーム処理を完全ガイド!文字数制限と正規表現バリデーション
New4
Jakarta EE
Jakarta EEのJSFマネージドBean入門!Jakarta Facesで学ぶ基本と役割を初心者向けに徹底解説
人気記事
No.1
Java&Spring記事人気No1
Play Framework
Play Frameworkで学ぶ単純なフォーム作成方法!初心者でもわかる名前・メールアドレス入力
No.2
Java&Spring記事人気No2
Jakarta EE
Jakarta サーブレットのdoGetとdoPostの違いと使い分けを徹底解説!初心者でもわかるHTTPリクエスト処理
No.3
Java&Spring記事人気No3
Play Framework
Play Frameworkのデータバインディングを完全解説!初心者でもわかるフォーム入力と自動変換の仕組み
No.4
Java&Spring記事人気No4
Jakarta EE
Jakarta EEのリリースサイクルとバージョンの進化をやさしく解説!
No.5
Java&Spring記事人気No5
Jakarta EE
Jakarta EE JSFカスタムコンポーネントとは?初心者向けに基礎から徹底解説【Jakarta Faces・Webアプリ開発】
No.6
Java&Spring記事人気No6
Play Framework
Play FrameworkのUI設計を最適化!Twirlテンプレートのベストプラクティス
No.7
Java&Spring記事人気No7
Play Framework
Play Frameworkのフォーム処理を完全ガイド!文字数制限と正規表現バリデーション
No.8
Java&Spring記事人気No8
Jakarta EE
Jakarta EEのJakarta Faces(JSF)ライフサイクルを図解で徹底解説 初心者向けUI開発入門