GNU/Linux >> Belajar Linux >  >> Debian

Cara Menginstal GlassFish dengan Nginx sebagai Reverse Proxy di Debian 10

GlassFish adalah implementasi Java Platform open-source dan pertama di dunia yang dikembangkan oleh Eclipse Foundation. Ini adalah server aplikasi yang ringan dan mendukung berbagai teknologi berbasis Java seperti Enterprise JavaBeans, JPA, JavaServer Faces, JMS, dan banyak lagi. GlassFish hadir dengan konsol administrasi yang sederhana dan mudah digunakan dengan alat pembaruan untuk pembaruan dan komponen tambahan.

Dalam tutorial ini, kami akan menjelaskan cara menginstal GlassFish di Debian 10 dengan Nginx sebagai reverse proxy.

Persyaratan

  • Server yang menjalankan Debian 10.
  • Kata sandi root 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.

Menginstal Java

GlassFish membutuhkan Java versi 8 untuk diinstal di server Anda. Jadi, Anda perlu menghapus Java jika Anda memiliki versi Java lain yang terinstal di sistem Anda.

Anda dapat menghapus Java versi 11 dengan perintah berikut:

apt-get remove openjdk-11-jre-headless

Selanjutnya, Anda perlu mengunduh Java versi 8 dari situs web resmi mereka. Setelah unduhan selesai, ekstrak file yang diunduh 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, atur versi Java default dengan perintah berikut:

update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.8.0_221/bin/java 1

Anda akan mendapatkan output berikut:

update-alternatives: using /usr/lib/jvm/jdk1.8.0_221/bin/java to provide /usr/bin/java (java) in auto mode

Anda sekarang dapat memeriksa versi java dengan perintah berikut:

java -version

Anda akan melihat 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 GlassFish

Pertama, instal paket yang diperlukan dengan perintah berikut:

apt-get install wget unzip -y

Selanjutnya, unduh GlassFish versi terbaru dengan perintah berikut:

wget http://download.oracle.com/glassfish/5.0.1/nightly/latest-glassfish.zip

Setelah unduhan selesai, ekstrak file yang diunduh ke direktori /opt menggunakan perintah berikut:

unzip latest-glassfish.zip -d /opt/

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Buat Layanan GlassFish

Selanjutnya, Anda dapat membuat file layanan systemd untuk mengelola layanan GlassFish. Anda dapat membuatnya dengan perintah berikut:

nano /etc/systemd/system/glassfish.service

Tambahkan konten berikut:

[Unit]
Description = GlassFish Server v5.0
After = syslog.target network.target

[Service]
ExecStart=/opt/glassfish5/bin/asadmin start-domain
ExecReload=/opt/glassfish5/bin/asadmin restart-domain
ExecStop=/opt/glassfish5/bin/asadmin stop-domain
Type = forking

[Install]
WantedBy = multi-user.target

Simpan dan tutup file. Kemudian, muat ulang daemon systemd dengan perintah berikut:

systemctl daemon-reload

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

systemctl start glassfish
systemctl enable glassfish

Anda sekarang dapat memeriksa status layanan GlassFish dengan perintah berikut:

systemctl status glassfish

Anda akan mendapatkan output berikut:

? glassfish.service - GlassFish Server v5.0
   Loaded: loaded (/etc/systemd/system/glassfish.service; disabled; vendor preset: enabled)
   Active: active (running) since Thu 2019-09-19 04:54:25 EDT; 42s ago
  Process: 15205 ExecStart=/opt/glassfish5/bin/asadmin start-domain (code=exited, status=0/SUCCESS)
 Main PID: 15217 (java)
    Tasks: 90 (limit: 1138)
   Memory: 271.7M
   CGroup: /system.slice/glassfish.service
           ??15217 /usr/lib/jvm/jdk1.8.0_221/bin/java -cp /opt/glassfish5/glassfish/modules/glassfish.jar -XX:+UnlockDiagnosticVMOptions -XX:Ne

Sep 19 04:53:42 debian systemd[1]: Starting GlassFish Server v5.0...
Sep 19 04:54:24 debian asadmin[15205]: Waiting for domain1 to start .................................
Sep 19 04:54:24 debian asadmin[15205]: Successfully started the domain : domain1
Sep 19 04:54:24 debian asadmin[15205]: domain  Location: /opt/glassfish5/glassfish/domains/domain1
Sep 19 04:54:24 debian asadmin[15205]: Log File: /opt/glassfish5/glassfish/domains/domain1/logs/server.log
Sep 19 04:54:24 debian asadmin[15205]: Admin Port: 4848
Sep 19 04:54:24 debian asadmin[15205]: Command start-domain executed successfully.
Sep 19 04:54:25 debian systemd[1]: Started GlassFish Server v5.0.
lines 1-18/18 (END)

Aktifkan Konsol Admin GlassFish

Secara default, kata sandi konsol admin GlassFish tidak disetel. Jadi, Anda perlu memperbarui kata sandi admin.

Jalankan perintah berikut untuk mengatur kata sandi admin:

/opt/glassfish5/bin/asadmin change-admin-password

Berikan kata sandi yang Anda inginkan dan tekan Enter. Setelah kata sandi ditetapkan, Anda akan melihat output berikut:

Enter admin user name [default: admin]>admin
Enter the admin password> 
Enter the new admin password> 
Enter the new admin password again> 
Command change-admin-password executed successfully.

Selanjutnya, Anda harus mengaktifkan fitur admin aman. Anda dapat melakukannya dengan perintah berikut:

/opt/glassfish5/bin/asadmin enable-secure-admin

Berikan nama pengguna dan kata sandi admin Anda, dan tekan Enter untuk mengaktifkan admin aman seperti yang ditunjukkan di bawah ini:

Enter admin user name>  admin
Enter admin password for user "admin"> 
You must restart all running servers for the change in secure admin to take effect.
Command enable-secure-admin executed successfully.

Selanjutnya, restart layanan GlassFish untuk menerapkan perubahan konfigurasi:

systemctl restart glassfish

Akses GlassFish

Secara default, aplikasi GlassFish berjalan pada port 8080. Anda dapat mengaksesnya dengan mengunjungi URL http://your-server-ip:8080. Anda akan melihat halaman berikut:

Konsol admin GlassFish berjalan pada port 4848. Anda dapat mengaksesnya dengan mengunjungi URL http://your-server-ip:4848. Anda akan melihat halaman login GlassFish:

Berikan nama pengguna dan sandi admin Anda, lalu klik Login tombol. Anda akan melihat konsol admin GlassFish di layar berikut:

Menerapkan Aplikasi di GlassFish

GlassFish sekarang terinstal dan dikonfigurasi, saatnya untuk menerapkan aplikasi sampel di GlassFish.

Pertama, download aplikasi hello.war dengan perintah berikut:

wget https://github.com/dmatej/Glassfish/raw/master/v2/www/downloads/quickstart/hello.war

Selanjutnya, deploy aplikasi hello.war dengan perintah berikut:

/opt/glassfish5/bin/asadmin deploy hello.war

Anda akan melihat output berikut:

  Version: V3
  Subject: CN=localhost, OU=GlassFish, O=Oracle Corporation, L=Santa Clara, ST=California, C=US
  Signature Algorithm: SHA256withRSA, OID = 1.2.840.113549.1.1.11

  Key:  Sun RSA public key, 2048 bits
  modulus: 26796330640308027923768800042502020134808966576745098232029910481655545436468207928921434907495986430069072245547607053010428717755932187048623252153613041636091429700133899537566912806297788375081359516836091002133743138757261794690981737280330851500902934286405305506594303276580413684625941149729611614458782091187522283499926880436357851913036137048969953439207474630152049712806975982901461106170366207997764866053158318707816771263261147284707875045634066423002500565550480728681743613266266732299458152358213914375115269066441015633123820868476095174900081535873996509058837674720310526766610294764426209317187
  public exponent: 65537
  Validity: [From: Tue Jan 15 21:17:50 EST 2019,
               To: Fri Jan 12 21:17:50 EST 2029]
  Issuer: CN=localhost, OU=GlassFish, O=Oracle Corporation, L=Santa Clara, ST=California, C=US
  SerialNumber: [    3347569f]

Certificate Extensions: 1
[1]: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: F2 F1 22 14 40 CA 9E 1D   92 3B B6 B9 09 D1 27 E7  .."[email protected];....'.
0010: 50 1A 37 4D                                        P.7M
]
]

]
  Algorithm: [SHA256withRSA]
  Signature:
0000: C7 CB 91 D4 9B 39 21 13   B3 48 87 09 85 2E DF B7  .....9!..H......
0010: F9 E7 52 1B 39 D0 12 55   97 A8 02 8D B9 EC 26 F0  ..R.9..U......&.
0020: A6 8F 29 5B 96 80 71 AA   CB C8 EA 83 4F 18 E7 19  ..)[..q.....O...
0030: 26 CF BF 72 B1 E6 23 53   F2 14 CD BA 68 FE 4B 4C  &..r..#S....h.KL
0040: BB B1 3E DE D9 EB 6D 96   8C 8F 0D 33 B6 E7 28 F1  ..>...m....3..(.
0050: D5 40 6B BC 01 FF F9 5A   79 9A 96 DA D9 2A 84 99  [email protected]*..
0060: FA 3A 7A 9D 52 6C C2 D5   E9 DC 98 8B 20 EF 69 99  .:z.Rl...... .i.
0070: E6 FC 1B 0F CA B2 0C 66   BE BB A7 EA 3D DB BB F5  .......f....=...
0080: 88 F1 B4 B1 15 74 FA 9F   E0 9A 98 C5 12 A0 60 B4  .....t........`.
0090: 9B 92 19 FD BA 81 20 7F   51 83 E9 22 56 96 9A 40  ...... .Q.."[email protected]
00A0: 2C 27 BB 86 57 7D 2E E9   C5 98 1A 04 A2 C5 FC 17  ,'..W...........
00B0: 6E 8B 31 79 29 A0 A1 22   1A 31 C0 A6 96 7A D4 80  n.1y)..".1...z..
00C0: 3F 05 26 BB DE D1 2D 74   01 1F 24 EC CE 3B 97 42  ?.&...-t..$..;.B
00D0: 16 E8 16 F1 A4 10 92 0B   8E A5 18 59 BF AA 69 B0  ...........Y..i.
00E0: DB C8 C2 66 5F 5D 2F 3D   4B C7 90 1D C2 24 B1 57  ...f_]/=K....$.W
00F0: 22 02 DA 76 FF 2E B7 C5   E4 E6 50 BD 73 36 AA 8A  "..v......P.s6..

]
Do you trust the above certificate [y|N] -->y
Enter admin user name>  admin
Enter admin password for user "admin"> 
Application deployed with name hello.
Command deploy executed successfully.

Untuk mengakses aplikasi Anda, buka browser web Anda dan ketik URL http://your-server-ip:8080/hello. Anda akan diarahkan ke halaman berikut:

Konfigurasikan Nginx sebagai Proxy Terbalik

Sekarang, 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 virtual host Nginx untuk GlassFish dengan perintah berikut:

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

Tambahkan baris berikut:

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

server {
  listen          80;
  server_name     example.com;

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

Simpan dan tutup file. 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 layanan Nginx dengan perintah berikut:

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

Sekarang, Anda dapat mengakses aplikasi Anda dengan mengunjungi URL http://example.com.

Selamat! Anda telah berhasil menginstal GlassFish dengan Nginx sebagai proxy terbalik di Debian 10. Sekarang Anda dapat menerapkan aplikasi berbasis Java apa pun di server Anda dengan mudah.


Debian
  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

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

  2. Cara Menginstal Flectra di Ubuntu 20.04 dengan Nginx sebagai Proxy Terbalik

  3. Cara Menginstal Odoo 12 di Ubuntu 18.04 dengan Nginx sebagai Proxy Terbalik

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

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

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