GNU/Linux >> Belajar Linux >  >> Debian

Cara Install WildFly dengan Nginx sebagai Reverse Proxy di Debian 10

WildFly adalah runtime aplikasi gratis, open-source, dan lintas platform yang ditulis dalam Java dan dikembangkan oleh Red Hat yang memungkinkan Anda mengembangkan aplikasi hebat dari satu IDE. Ini ringan, cepat, fleksibel dan didasarkan pada subsistem yang dapat dipasang. Ini berjalan pada sistem operasi Windows dan Linux dan bertujuan untuk menyediakan lingkungan runtime Java yang cepat dan stabil kepada pengguna. Wildfly hadir dengan serangkaian fitur yang kaya termasuk, Cepat, Waktu Proses yang Dapat Disesuaikan, Skalabilitas, Konfigurasi &Manajemen Terpadu, Pemuatan Bersamaan, Penautan Cepat, Manajemen Domain, dan banyak lagi.

Dalam tutorial ini, kami akan menunjukkan kepada Anda langkah-langkah untuk menginstal Wildfly dengan Nginx sebagai proxy terbalik di Debian 10.

Persyaratan

  • Server yang menjalankan Debian 10.
  • Kata sandi root telah disiapkan untuk server Anda.

Memulai

Sebelum memulai, Anda perlu memperbarui sistem Anda dengan versi terbaru. Anda dapat melakukannya dengan menjalankan perintah berikut:

apt-get update -y
apt-get upgrade -y

Setelah server Anda diperbarui, mulai ulang server Anda untuk menerapkan perubahan.

Instal Java

WildFly membutuhkan Java versi 8 untuk diinstal di server Anda. Secara default, Java 8 tidak tersedia di repositori default Debian 10. Jadi, Anda perlu mengunduh Java 8 dari situs resmi mereka.

Setelah mengunduh Java 8, ekstrak sumber Java ke direktori /usr/lib/jvm dengan perintah berikut:

mkdir /usr/lib/jvm/
tar -zxvf jdk-8u221-linux-x64.tar.gz -C /usr/lib/jvm/

Selanjutnya, jalankan perintah berikut untuk mengubah versi Java default:

update-alternatives --config java

Pilih Java versi 8 dan tekan Enter. Anda akan melihat output berikut:

There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                         Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-11-openjdk-amd64/bin/java   1111      auto mode
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java   1111      manual mode
  2            /usr/lib/jvm/jdk1.8.0_221/bin/java            1         manual mode

Press  to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/lib/jvm/jdk1.8.0_221/bin/java to provide /usr/bin/java (java) in manual mode

Selanjutnya, periksa versi Java menggunakan perintah berikut:

java -version

Anda akan mendapatkan output berikut:

java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

Instal Wildfly

Pertama, Anda perlu membuat pengguna dan grup untuk Wildfly. Anda dapat membuatnya dengan perintah berikut:

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

Selanjutnya, unduh Wildfly versi terbaru dengan perintah berikut:

wget https://download.jboss.org/wildfly/17.0.1.Final/wildfly-17.0.1.Final.zip

Setelah unduhan selesai, ekstrak file yang diunduh dengan perintah berikut:

unzip wildfly-17.0.1.Final.zip

Selanjutnya, salin direktori yang diekstrak ke /opt/ dengan perintah berikut:

cp -r wildfly-17.0.1.Final /opt/wildfly

Selanjutnya, ubah kepemilikan direktori wildfly menjadi pengguna wildfly seperti gambar di bawah ini:

chown -RH wildfly:wildfly /opt/wildfly

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Konfigurasi Wildfly

Selanjutnya, Anda perlu menyalin file yang diperlukan untuk mengonfigurasi WildFly.

Pertama, salin file konfigurasi WildFly ke direktori /etc/wildfly:

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

Selanjutnya, salin file launch.sh ke direktori /opt/wildfly/bin/ dengan perintah berikut:

cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/

Selanjutnya, berikan izin eksekusi ke file launch.sh:

sh -c 'chmod +x /opt/wildfly/bin/*.sh'

Selanjutnya, salin file unit sistem Wildfly ke direktori /etc/systemd/system/:

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

Selanjutnya, muat ulang daemon systemd dengan perintah berikut:

systemctl daemon-reload

Selanjutnya, mulai layanan WildFly dan aktifkan untuk memulai saat boot dengan perintah berikut:

systemctl start wildfly
systemctl enable wildfly

Anda sekarang dapat memeriksa status layanan Wildfly dengan perintah berikut:

systemctl status wildfly

Anda akan mendapatkan output berikut:

? wildfly.service - The WildFly Application Server
   Loaded: loaded (/etc/systemd/system/wildfly.service; disabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-09-10 00:19:27 EDT; 1s ago
 Main PID: 1142 (launch.sh)
    Tasks: 7 (limit: 1138)
   Memory: 24.7M
   CGroup: /system.slice/wildfly.service
           ??1142 /bin/bash /opt/wildfly/bin/launch.sh standalone standalone.xml 0.0.0.0
           ??1143 /bin/sh /opt/wildfly/bin/standalone.sh -c standalone.xml -b 0.0.0.0
           ??1200 java -D[Standalone] -server -Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -

Sep 10 00:19:27 debian systemd[1]: Started The WildFly Application Server.

Konfigurasi WildFly Authentication

Selanjutnya, Anda perlu membuat pengguna administrator untuk Wildfly untuk mengakses konsol admin WildFly. Anda dapat membuatnya dengan perintah berikut:

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

Anda akan melihat output berikut:

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

Ketik a dan tekan Enter untuk membuat pengguna Manajemen. Selama proses pembuatan pengguna, Anda harus memberikan nama pengguna, kata sandi, dan nama grup seperti yang ditunjukkan di bawah ini:

Enter the details of the new user to add.
Using realm 'ManagementRealm' as discovered from the existing property files.
Username : wildflyadmin
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 : 
What groups do you want this user to belong to? (Please enter a comma separated list, or leave blank for none)[  ]: 
About to add user 'wildflyadmin' for realm 'ManagementRealm'
Is this correct yes/no? yes
Added user 'wildflyadmin' to file '/opt/wildfly/standalone/configuration/mgmt-users.properties'
Added user 'wildflyadmin' to file '/opt/wildfly/domain/configuration/mgmt-users.properties'
Added user 'wildflyadmin' with groups  to file '/opt/wildfly/standalone/configuration/mgmt-groups.properties'
Added user 'wildflyadmin' with groups  to file '/opt/wildfly/domain/configuration/mgmt-groups.properties'
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 

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Konfigurasikan WildFly agar Dapat Diakses dari Sistem Jarak Jauh

Secara default, Wildfly hanya dapat diakses dari sistem lokal. Jadi, Anda perlu mengonfigurasinya untuk mengakses dari sistem jarak jauh. Anda dapat melakukannya dengan mengedit file /etc/wildfly/wildfly.conf:

nano /etc/wildfly/wildfly.conf

Tambahkan baris berikut di akhir file:

WILDFLY_CONSOLE_BIND=0.0.0.0

Simpan dan tutup file ketika Anda selesai. Kemudian, buka file /opt/wildfly/bin/launch.sh seperti gambar di bawah ini:

nano /opt/wildfly/bin/launch.sh

Ubah file seperti gambar di bawah ini:

if [ "x$WILDFLY_HOME" = "x" ]; then
    WILDFLY_HOME="/opt/wildfly"
fi

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

Simpan dan tutup file. Kemudian, buka file /etc/systemd/system/wildfly.service.

nano /etc/systemd/system/wildfly.service

Ubah file seperti gambar di bawah ini:

[Unit]
Description=The WildFly Application Server
After=syslog.target network.target
Before=httpd.service

[Service]
Environment=LAUNCH_JBOSS_IN_BACKGROUND=1
EnvironmentFile=-/etc/wildfly/wildfly.conf
User=wildfly
LimitNOFILE=102642
PIDFile=/var/run/wildfly/wildfly.pid
ExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND $WILDFLY_CONSOLE_BIND
StandardOutput=null

[Install]
WantedBy=multi-user.target

Simpan file. Kemudian, buat direktori /var/run/wildfly dan atur izin yang benar

mkdir /var/run/wildfly/
chown wildfly:wildfly /var/run/wildfly/

Terakhir, muat ulang daemon systemd dan mulai ulang layanan Wildfly untuk menerapkan perubahan:

systemctl daemon-reload
systemctl restart wildfly

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Akses Wildfly

Wildfly sekarang diinstal dan dikonfigurasi untuk mengakses dari sistem jarak jauh. Secara default, konsol manajemen Wildfly mendengarkan pada port 9990. Anda dapat mengaksesnya dengan mengunjungi URL http://192.168.0.4:9990 . Anda akan diarahkan ke halaman berikut:

Sekarang, berikan nama pengguna dan sandi admin Anda, dan klik Tanda di tombol. Anda akan melihat konsol manajemen Wildfly di layar berikut:

Anda juga dapat mengakses aplikasi Wildfly dengan mengunjungi URL http://192.168.0.4:8080 . Anda akan melihat halaman berikut:

Konfigurasikan Nginx sebagai Proxy Terbalik untuk Wildfly

Selanjutnya, Anda perlu mengonfigurasi Nginx sebagai proxy terbalik ke permintaan proxy yang berasal dari port 80 hingga 8080.

Pertama, instal Nginx dengan perintah berikut:

apt-get install nginx -y

Setelah Nginx diinstal, buat file host virtual baru untuk Nginx dengan perintah berikut:

nano /etc/nginx/sites-available/wildfly.conf

Tambahkan baris berikut:

upstream wildfly {
  server 127.0.0.1:8080 weight=100 max_fails=5 fail_timeout=5;
}

server {
  listen          80;
  server_name     192.168.0.4;

  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://wildfly/;
  }
}

Simpan dan tutup file setelah Anda selesai. Kemudian, periksa Nginx apakah ada kesalahan sintaks dengan perintah berikut:

nginx -t

Anda akan mendapatkan output berikut:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Selanjutnya, aktifkan virtual host Nginx dan restart Nginx dengan perintah berikut:

ln -s /etc/nginx/sites-available/wildfly.conf /etc/nginx/sites-enabled/
systemctl restart nginx

Anda sekarang dapat mengakses aplikasi Wildfly tanpa menentukan port 8080.

Itu dia. Anda telah berhasil menginstal dan mengonfigurasi Wildfly dengan Nginx sebagai proxy terbalik di Debian 10. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan.


Debian
  1. Cara Menginstal Odoo 10 di CentOS 7 dengan Nginx sebagai Proxy Terbalik

  2. Cara menginstal dan mengkonfigurasi JBoss AS dengan Java dan Apache2 sebagai proxy terbalik

  3. Instal Odoo di VPS Debian 8 dengan Nginx sebagai proxy terbalik

  1. Cara Menginstal Odoo 11 di Debian 9 dengan Nginx sebagai Proxy Terbalik

  2. Cara Menginstal Odoo 12 di Debian 10 dengan Nginx sebagai Proxy Terbalik

  3. Cara Menginstal WonderCMS dengan Nginx di Debian 11

  1. Cara menginstal Odoo 11 di CentOS 7 dengan Nginx sebagai Proxy Terbalik

  2. Cara Menginstal Flectra di CentOS 8 dengan Nginx sebagai Proxy Terbalik

  3. Cara Menginstal Odoo 14 di CentOS 8 dengan Nginx sebagai Reverse Proxy