サーバー設定 · 1 min read · Oct 21, 2025
AlmaLinux 9にNginxリバースプロキシを使用してGlassFish Javaアプリケーションサーバーをインストールする方法

GlassFishは、Eclipseによって開発されたJava EEプラットフォームの無料でオープンソースの実装です。これは、JavaアプリケーションをデプロイするためのJava EEプラットフォームの世界初の実装です。GlassFishは、Enterprise JavaBeans、JPA、JavaServer Faces、JMSなど、複数のJavaテクノロジーをサポートするスケーラブルなアーキテクチャを提供します。
このガイドでは、Nginxリバースプロキシを使用してAlmaLinux 9サーバーにGlassFishをインストールする方法を示します。また、GlassFishの管理のために認証を有効にし、安全なSSL/TLS接続を設定することでGlassFishを保護する方法についても説明します。
前提条件
始める前に、以下のものを用意してください:
- AlmaLinux 9サーバー。
- 管理者権限を持つ非ルートユーザー。
- サーバーのIPアドレスを指すローカルドメイン名。
依存関係の設定
まず、GlassFishを実行するために使用されるシステムユーザーを追加し、Java OpenJDKパッケージをインストールすることでAlmaLinuxシステムを設定する必要があります。
パッケージをインストールする前に、以下のコマンドで新しいシステムユーザーglassfishを作成します。このユーザーは、GlassFishのインストールディレクトリとして使用されるデフォルトのホームディレクトリ/opt/glassfish7を持ちます。
sudo useradd -m -d /opt/glassfish7 -U -s /bin/false glassfish次に、以下のコマンドでJava OpenJDK 21とunzipパッケージをインストールします。インストールを続行するにはyと入力します。
sudo dnf install java-21-openjdk unzip nano
インストールが完了したら、以下のコマンドでJavaのバージョンを確認します。AlmaLinuxサーバーにJava 17または21がインストールされていることを確認してください。
java --versionGlassFishパッケージのダウンロード
システムユーザーを作成し、Javaをインストールした後、GlassFishパッケージをダウンロードできます。GlassFishのダウンロードページにアクセスし、最新バージョンのリンクをコピーしてください。
以下のwgetコマンドを使用してGlassFishパッケージをダウンロードします。
wget https://download.eclipse.org/ee4j/glassfish/glassfish-7.0.12.zipダウンロードが完了したら、以下のunzipコマンドでglassfish-7.0.12.zipファイルを/optディレクトリに抽出します。これにより、GlassFishが/opt/glassfish7ディレクトリに抽出されます。
unzip glassfish-7.0.12.zip -d /opt最後に、/opt/glassfish7ディレクトリの所有権をユーザーglassfishに変更します。これは、GlassFishをシステムユーザーglassfishとして実行するためです。
sudo chown -R glassfish:glassfish /opt/glassfish7GlassFishのsystemdサービスの設定
このガイドでは、GlassFishをsystemdサービスとして実行します。これにより、バックグラウンドでGlassFishが実行され、systemctlユーティリティを介して簡単に管理できます。
以下のnanoエディタを使用して、新しいsystemdサービスファイル/etc/systemd/system/glassfish7.serviceを作成します。
sudo nano /etc/systemd/system/glassfish7.service以下のGlassFish用のsystemd構成を挿入します。
[Unit]
Description = GlassFish Server v7
After = syslog.target network.target
[Service]
User=glassfish
ExecStart=/opt/glassfish7/bin/asadmin start-domain
ExecReload=/opt/glassfish7/bin/asadmin restart-domain
ExecStop=/opt/glassfish7/bin/asadmin stop-domain
Type = forking
[Install]
WantedBy = multi-user.targetファイルを保存し、終了します。
次に、新しいサービスファイルを適用するためにsystemdマネージャーをリロードします。
sudo systemctl daemon-reload次に、以下のコマンドでGlassFishを開始し、有効にします。開始されると、GlassFishはポート8080と4848で実行されるはずです。
sudo systemctl start glassfish7
sudo systemctl enable glassfish7
最後に、以下のコマンドでglassfish7サービスを確認します。glassfish7サービスが有効で、システムで実行されていることを確認してください。
sudo systemctl status glassfish7
GlassFish管理者の設定
この時点で、GlassFishはシステムでsystemdサービスとして実行されています。次に、GlassFishの管理ユーザーを確認し、GlassFish管理を保護するためにenable-secure-adminを設定する必要があります。
まず、以下のコマンドを実行して、GlassFishインストール用の新しい管理者ユーザーを作成します。
sudo -u glassfish /opt/glassfish7/bin/asadmin --port 4848 change-admin-passwordユーザーの入力を求められたら、デフォルトユーザーadminと入力し、パスワードを求められたらENTERを押します。デフォルトのGlassFishにはパスワードがありません。
新しいパスワードを設定するように求められたら、パスワードを入力し、繰り返します。
プロセスが完了すると、「 Command change-admin-password executed successfully 」という出力が得られます。
GlassFishの管理者パスワードを設定した後、以下のコマンドを実行してsecure-admin機能を有効にします。これにより、GlassFish用のSSL/TLS証明書が自動的に生成されます。
sudo -u glassfish /opt/glassfish7/bin/asadmin --port 4848 enable-secure-admin求められたら、GlassFishの管理ユーザーとパスワードを入力します。プロセスが成功すると、「 Command enable-secure-admin executed successfully 」という出力が表示されます。
最後に、以下のコマンドを実行してglassfish7サービスを再起動し、GlassFishへの変更を適用します。コマンドが実行されると、GlassFishインストールが保護され、新しいパスワードを持つ管理ユーザーとGlassFish管理用のTLS証明書が生成されます。
sudo systemctl restart glassfish7NginxリバースプロキシでGlassFishを実行する
このガイドでは、Nginxリバースプロキシの背後でGlassFishを実行します。したがって、AlmaLinuxサーバーにNginxをインストールし、リバースプロキシ用の新しいサーバーブロック構成を作成する必要があります。
以下のコマンドを使用して、AlmaLinuxにNginxウェブサーバーをインストールします。インストールを続行するにはyと入力します。
sudo dnf install nginx
インストールが完了したら、以下のnanoエディタコマンドを使用して新しいサーバーブロック構成/etc/nginx/conf.d/glassfish.confを作成します。
sudo nano /etc/nginx/conf.d/glassfish.conf以下の構成を挿入して、デフォルトでポート8080で実行されているGlassFishのリバースプロキシを設定します。以下のドメイン名をローカルドメインに変更してください。
upstream glassfish7 {
server 127.0.0.1:8080 weight=100 max_fails=5 fail_timeout=5;
}
server {
listen 80;
server_name glassfish.howtoforge.local;
location / {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://glassfish7/;
}
}完了したら、ファイルを保存して終了します。
次に、以下のコマンドを使用してNginxの構文を確認します。正しい構文がある場合、「syntax is ok - test is successful」という出力が得られます。
sudo nginx -t次に、以下のコマンドを使用してAlmaLinuxサーバーでNginxを開始し、有効にします。
sudo systemctl start nginx
sudo systemctl enable nginx
開始されたら、以下のコマンドを使用してNginxサービスを確認し、サービスが実行されていて有効であることを確認します。
sudo systemctl status nginx以下に、NginxサービスがAlmaLinuxで実行され、有効であることが表示されます。

Firewalldの設定
Nginxが実行されている状態で、firewalldを介してサーバーのHTTPポートを開く必要があります。さらに、GlassFish管理者によって使用されるポート4848も開くことができます。
以下のコマンドを使用して、firewalldでHTTPおよびHTTPSサービスの両方を開きます。
sudo firewall-cmd --add-service={http,https} --permanentGlassFish管理に使用されるTCPポート4848を開きます。
sudo firewall-cmd --add-port=4848/tcp --permanent次に、firewalldをリロードして変更を適用します。その後、リストされたルールを確認します。
sudo firewall-cmd --reload
sudo firewall-cmd --list-all以下に、firewalldに追加されたHTTP、HTTPSサービス、およびポート4848が表示されます。

GlassFishへのアクセス


正しいパスワードを入力すると、GlassFishのダッシュボードが表示されるはずです。

結論
おめでとうございます!AlmaLinux 9サーバーにGlassFishを正常にインストールしました。GlassFishをインストールし、管理者ユーザーを設定し、GlassFishの管理を保護しました。最後に、GlassFishインストール用のリバースプロキシとしてNginxをインストールおよび設定しました。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。