Ubuntu 20.04にNginxリバースプロキシを備えたWildFly Javaアプリケーションサーバーをインストールする方法

WildFlyまたは以前はJBoss ASとして知られていたものは、JEE(Java Enterprise Edition)コンテナーの軽量実装です。その柔軟なアプリケーションランタイムはJavaで記述されており、素晴らしいアプリケーションの構築に役立ちます。

WildFlyは、Linux、macOS、およびWindowsオペレーティングシステムで実行されるマルチプラットフォームアプリケーションランタイムです。 JBoss Incによって作成され、2006年にRedHatによって買収され、WildFlyになりました。

このチュートリアルでは、最新のUbuntu 20.04にWildFlyをインストールする方法を示します。 WildFly 20の最新バージョンをインストールし、WildFlyの管理コンソールを有効にし、WildFly管理ユーザーを作成し、NginxをWildFlyのリバースプロキシとしてセットアップします。

前提条件

このガイドでは、2 GBのRAM、50 GBの空きディスク容量、2つのCPUを備えた最新のUbuntu Server 20.04 FocalFossaにWildFlyをインストールします。

何をしたらいいでしょう?

  • Java OpenJDK 11をインストールする
  • 新しいユーザーを追加してWildFlyをダウンロード
  • WildFlyの基本構成
  • WildFly管理コンソールを有効にする
  • WildFlyの管理者ユーザーの設定
  • NginxをWildFlyのリバースプロキシとして設定する
  • テスト中

ステップ1-Java OpenJDKをインストールする

まず、Java OpenJDKをUbuntuサーバー20.04にインストールします。また、WildFlyのインストールにはJava OpenJDK 11を使用します。これは、Ubuntu 20.04リポジトリ上のJavaパッケージのデフォルトバージョンです。

以下のaptコマンドを使用して、すべてのパッケージリポジトリを更新し、Java OpenJDKをインストールします。

sudo apt update 
 sudo apt install default-jdk

すべてのインストールが完了したら、次のコマンドを使用してJavaのバージョンを確認します。

java -version

以下はあなたが得る結果です。

openjdk version "11.0.7" 2020-04-14 
 OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1) 
 OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)

その結果、Ubuntu 20.04へのJava OpenJDKのインストールが完了しました。

ステップ2-新しいユーザーを追加してWildFlyをダウンロードする

このステップでは、新しいシステムユーザーとグループ「wildfly」を作成し、wildflyのソースコードを「/ opt / wildfly」ディレクトリにダウンロードします。

次のコマンドを使用して、「wildfly」という名前の新しいユーザーとグループを作成します。

groupadd -r wildfly 
 useradd -r -g wildfly -d /opt/wildfly -s /sbin/nologin wildfly

次に、「/ opt」ディレクトリに移動し、次のようにwgetコマンドを使用してwildflyソースコードをダウンロードします。

cd /opt/ 
 wget -q wget https://download.jboss.org/wildfly/20.0.1.Final/wildfly-20.0.1.Final.tar.gz

wildflyのソースコードがダウンロードされました。

次に、wildflyのソースコードを抽出し、抽出したディレクトリの名前を「wildfly」に変更します。

tar -xf wildfly-20.0.1.Final.tar.gz 
 mv wildfly-20.0.1.Final wildfly

その後、「wildfly」ディレクトリの所有権を「wildfly」のユーザーとグループに変更します。

chown -RH wildfly:wildfly /opt/wildfly

その結果、wildflyインストールディレクトリは「/ opt / wildfly」ディレクトリにあります。 wildflyサービスは、先ほど作成した「wildfly」という名前の新しいユーザーの下で実行されます。

ステップ3-WildFlyの基本構成

wildflyのソースコードをダウンロードしたら、Ubuntuシステムにwildflyを設定します。

新しい構成ディレクトリ「/ etc / wildfly」を作成し、サンプル構成「wildfly.conf」をその中にコピーします。

mkdir -p /etc/wildfly 
 cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.conf /etc/wildfly/

次に、サービスファイル「wildfly.service」を「/ etc / systemd / system」ディレクトリにコピーします。

cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service /etc/systemd/system/

その後、wildfly起動スクリプトのサンプルを「/ opt / wildfly / bin」ディレクトリにコピーし、実行可能にします。

cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/ 
 chmod +x /opt/wildfly/bin/*.sh

systemdマネージャーをリロードして、新しい「wildfly.service」ファイルを適用します。

systemctl daemon-reload

wildflyサービスを開始し、システムブートに追加します。 広告

systemctl start wildfly 
 systemctl enable wildfly

wildflyサービスは、デフォルト設定でUbuntuシステム上で稼働しています。

次のコマンドを使用して、wildflyサービスを確認します。

ss -plnt 
systemctl status wildfly

そして、以下のような結果が得られます。

ご覧のように、wildflyはUbuntuシステムのデフォルトTCPポート「8080」でsystemdサービスとして実行されます。

手順4-WildFly管理コンソールを有効にする

この手順では、ローカルIPアドレス「127.0.0.1」で実行されるようにwildflyを設定し、その管理コンソールを有効にします。 wildfly設定「wildfly.conf」、wildfly起動スクリプト「launch.sh」、およびwildflyサービスファイル「wildfly.service」を編集します。

vimエディターを使用して、wildfly構成 ‘/etc/wildfly/wildfly.conf’を編集します。

vim /etc/wildfly/wildfly.conf

次に、ローカルIPアドレス「127.0.0.1」を使用して「WILDFLY_BIND」の値を変更します。 広告

WILDFLY_BIND=127.0.0.1

wildfly管理コンソールを有効にするには、以下の「WILDFLY_CONSOLE_BIND」構成を追加します。

WILDFLY_CONSOLE_BIND=127.0.0.1

保存して閉じます。

次に、vimエディターを使用して、wildfly ‘/opt/wildfly/bin/launch.sh’の起動開始スクリプトを編集します。

vim /opt/wildfly/bin/launch.sh

domain.sh ‘および ‘ standalone.sh ‘行に、以下のようにwildfly管理コンソールを有効にするオプションを追加します。

if [[ "$1" == "domain" ]]; then
    $WILDFLY_HOME/bin/domain.sh -c $2 -b $3 -bmanagement $4
else
    $WILDFLY_HOME/bin/standalone.sh -c $2 -b $3 -bmanagement $4
fi

保存して閉じます。

次に、vimエディターを使用して、wildfly ‘/etc/systemd/system/wildfly.service’のデフォルトのサービスファイルを編集します。

vim /etc/systemd/system/wildfly.service

ExecStart = / opt / wildfly / bin / launch.sh …. ‘行に、以下のようにオプション ‘ $ WILDFLY_CONSOLE_BIND ‘を追加します。

ExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND $WILDFLY_CONSOLE_BIND

保存して閉じます。

systemdマネージャーをリロードして、wildflyサービスを再起動します。

systemctl daemon-reload 
 systemctl restart wildfly

 

wildflyサービスは、管理コンソールを有効にして実行されています。以下のコマンドを使用して確認してください。

ss -plnt 
 systemctl status wildfly

以下はあなたが得る結果です。

その結果、wildflyはローカルIPアドレス「 127.0.0.1 」で実行され、デフォルトのTCPポートは「 8080 」、wildfly管理コンソールはTCPポート「 9990 」で有効になっています。

手順5-管理者ユーザーWildFlyのセットアップ

このステップでは、wildflyが提供するスクリプト「add-user.sh」を使用して、wildflyを管理するための新しいユーザーを作成します。

以下のように、wildflyの「add-user.sh」スクリプトを実行します。

sh /opt/wildfly/bin/add-user.sh

ユーザーのタイプとして、「 a 」を入力して管理ユーザー(wildflyを管理するための管理者)を作成します。

What type of user do you wish to add? 
 a) Management User (mgmt-users.properties) 
 b) Application User (application-users.properties) 
 (a): a

ユーザー名とパスワードを入力し、安全なパスワードを使用してください。

Enter the details of the new user to add. 
 Using the realm 'ManagementRealm' as discovered from the existing property files. 
 Username : hakase 
 Password recommendations are listed below. To modify these restrictions edit the add-user.properties configuration file. 
 - The password should be different from the username 
 - The password should not be one of the following restricted values {root, admin, administrator} 
 - The password should contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), 1 non-alphanumeric symbol(s) 
 Password : 
 Re-enter Password :

新しいユーザーのグループの場合は、「 Enter 」を押して続行します。

What groups do you want this user to belong to? (Please enter a comma separated list, or leave blank for none)[ ]:

次に、「 yes 」と入力して、ユーザーをwildflyの「 ManagementRealm 」に追加します。

About to add user 'hakase' for realm 'ManagementRealm' 
 Is this correct yes/no? yes 
 Added user 'hakase' to file '/opt/wildfly/standalone/configuration/mgmt-users.properties' 
 Added user 'hakase' to file '/opt/wildfly/domain/configuration/mgmt-users.properties' 
 Added user 'hakase' with groups to file '/opt/wildfly/standalone/configuration/mgmt-groups.properties' 
 Added user 'hakase' with groups to file '/opt/wildfly/domain/configuration/mgmt-groups.properties'

yes 」と入力して、wildflyのマスター/スレーブホストコントローラーを管理するプロセスとしてユーザーを有効にします。

Is this new user going to be used for one AS process to connect to another AS process? 
e.g. for a slave host controller connecting to the master or for a Remoting connection for server to server EJB calls.
yes/no? yes
To represent the user add the following to the server-identities definition <secret value="YXNoN2RhNjVzZyMkJQ==" />

その結果、wildflyの管理ユーザーと管理ユーザーが作成されました。 広告

ステップ6-NginxをWildFlyのリバースプロキシとして設定する

このステップでは、NginxをUbuntuシステム上のワイルドフライのリバースプロキシとしてインストールして構成します。

以下のaptコマンドを使用して、Nginxパッケージをインストールします。

sudo apt install nginx -y

すべてのインストールが完了したら、「/ etc / nginx /」構成ディレクトリに移動します。

cd /etc/nginx/

vimエディターを使用して、「/ etc / nginx / conf.d」ディレクトリの下に新しいファイル「proxy_headers.conf」を作成します。

vim conf.d/proxy_headers.conf

次の構成を貼り付けます。

proxy_set_header Host $host; 
 proxy_set_header X-Forwarded-Proto $scheme; 
 add_header Front-End-Https on; 
 add_header Cache-Control no-cache;

保存して閉じます。

次に、 ‘/ etc / nginx / sites-available’ディレクトリの下にwildflyの新しい仮想ホスト構成を作成します。

vim sites-available/wildfly

自分のIPアドレスに変更して、設定を貼り付けます。

server {
  listen          80;
  server_name     SERVER-IP;

  location / {
    include conf.d/proxy_headers.conf;
    proxy_pass http://127.0.0.1:8080;
  }

  location /management {
    include conf.d/proxy_headers.conf;
    proxy_pass http://127.0.0.1:9990/management;
  }

  location /console {
    include conf.d/proxy_headers.conf;
    proxy_pass http://127.0.0.1:9990/console;
  }

  location /logout {
    include conf.d/proxy_headers.conf;
    proxy_pass http://127.0.0.1:9990/logout;
  }

  location /error {
    include conf.d/proxy_headers.conf;
    proxy_pass http://127.0.0.1:9990;
  }

}

保存して閉じます。

次に、wildfly仮想ホストをアクティブにして、Nginx構成を確認します。

ln -s /etc/nginx/sites-available/wildfly /etc/nginx/sites-enabled/ 
 nginx -t

エラーがないことを確認してから、Nginxサービスを再起動します。

systemctl restart nginx

その結果、wildflyのNginxのインストールと構成のリバースプロキシが完了しました。

ステップ7-テスト

Webブラウザーを開き、アドレスバーにサーバーのIPアドレスを入力します。

http://192.168.1.50/

これで、次のようなワイルドフライのデフォルトのインデックスページが表示されます。

次に、以下のようにURLパス ‘/ console’でwildfly管理コンソールにアクセスします。

http://192.168.1.50/console/

wildfly adminユーザーとパスワードを使用してログインします。

これで、次のようなワイルドフライ管理ダッシュボードが表示されます。

その結果、Ubuntu 20.04サーバーでのNginxリバースプロキシを使用したwildflyのインストールが正常に完了しました。

Source