GNU/Linux >> Belajar Linux >  >> Debian

Cara Install GlassFish Java Server dengan Nginx sebagai Reverse Proxy di Debian 11

GlassFish adalah server aplikasi sumber terbuka yang digunakan untuk menyebarkan aplikasi Java. Ini mendukung berbagai teknologi berbasis Java termasuk, JPA, JavaServer Faces, JMS, RMI, serta banyak teknologi berbasis Java lainnya. Ini menyediakan berbasis web serta antarmuka baris perintah untuk mengelola aplikasi Java dan komponennya. GlassFish memungkinkan Anda membuat aplikasi portabel dan skalabel yang dapat dengan mudah diintegrasikan dengan teknologi lama.

Dalam tutorial ini, saya akan menunjukkan cara menginstal server Glassfish dengan Nginx sebagai proxy terbalik di Debian 11.

Prasyarat

  • Server yang menjalankan Debian 11.
  • Nama domain valid yang ditunjukkan dengan IP server Anda.
  • Kata sandi root dikonfigurasi di server.

Instal Java

Glassfish adalah perangkat lunak aplikasi berbasis java sehingga Java harus diinstal di server Anda. Jika belum terinstal, Anda dapat menginstalnya dengan menjalankan perintah berikut:

apt-get install default-jdk unzip -y

Setelah Java diinstal, Anda dapat memverifikasi instalasi Java menggunakan perintah berikut:

java --version

Anda akan mendapatkan output berikut:

openjdk 11.0.13 2021-10-19
OpenJDK Runtime Environment (build 11.0.13+8-post-Debian-1deb11u1)
OpenJDK 64-Bit Server VM (build 11.0.13+8-post-Debian-1deb11u1, mixed mode, sharing)

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Unduh Glassfish

Pertama, Anda perlu mengunduh Glassfish versi terbaru dari situs web Eclipse. Anda dapat mengunduhnya menggunakan perintah wget seperti yang ditunjukkan di bawah ini:

wget https://download.eclipse.org/ee4j/glassfish/glassfish-6.1.0.zip

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

unzip glassfish-6.1.0.zip -d /opt/

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Buat File Layanan Systemd untuk Glassfish

Selanjutnya, Anda perlu membuat file layanan systemd untuk mengelola layanan Glassfish. Anda dapat membuatnya menggunakan perintah berikut:

nano /usr/lib/systemd/system/glassfish.service

Tambahkan baris berikut:

[Unit]
Description = GlassFish Server v6.1.0
After = syslog.target network.target

[Service]
User = root
ExecStart = /usr/bin/java -jar /opt/glassfish6/glassfish/lib/client/appserver-cli.jar start-domain
ExecStop = /usr/bin/java -jar /opt/glassfish6/glassfish/lib/client/appserver-cli.jar stop-domain
ExecReload = /usr/bin/java -jar /opt/glassfish6/glassfish/lib/client/appserver-cli.jar restart-domain
Type = forking

[Install]
WantedBy = multi-user.target

Simpan dan tutup file setelah Anda selesai. Kemudian, muat ulang daemon systemd untuk menerapkan perubahan.

systemctl daemon-reload

Selanjutnya, mulai layanan Glassfish dan aktifkan untuk memulai saat reboot sistem:

systemctl start glassfish
systemctl enable glassfish

Anda juga dapat memverifikasi layanan Glassfish menggunakan perintah berikut:

systemctl status glassfish

Anda akan mendapatkan output berikut:

? glassfish.service - GlassFish Server v6.1.0
     Loaded: loaded (/lib/systemd/system/glassfish.service; disabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-11-07 04:56:16 UTC; 8s ago
    Process: 6018 ExecStart=/usr/bin/java -jar /opt/glassfish6/glassfish/lib/client/appserver-cli.jar start-domain (code=exited, status=0/SUC>
   Main PID: 6037 (java)
      Tasks: 91 (limit: 4679)
     Memory: 343.0M
        CPU: 13.299s
     CGroup: /system.slice/glassfish.service
             ??6037 /usr/lib/jvm/java-11-openjdk-amd64/bin/java -cp /opt/glassfish6/glassfish/modules/glassfish.jar -XX:+UnlockDiagnosticVMOp>

Nov 07 04:56:10 debian11 systemd[1]: Starting GlassFish Server v6.1.0...
Nov 07 04:56:16 debian11 java[6018]: Waiting for domain1 to start .....
Nov 07 04:56:16 debian11 java[6018]: Successfully started the domain : domain1
Nov 07 04:56:16 debian11 java[6018]: domain  Location: /opt/glassfish6/glassfish/domains/domain1
Nov 07 04:56:16 debian11 java[6018]: Log File: /opt/glassfish6/glassfish/domains/domain1/logs/server.log
Nov 07 04:56:16 debian11 java[6018]: Admin Port: 4848
Nov 07 04:56:16 debian11 java[6018]: Command start-domain executed successfully.
Nov 07 04:56:16 debian11 systemd[1]: Started GlassFish Server v6.1.0.

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Setel Sandi Admin Glassfish

Secara default, Glassfish dapat diakses tanpa kata sandi apa pun. Jadi ada baiknya untuk mengamankannya dengan mengatur kata sandi admin. Anda dapat melakukannya dengan menjalankan perintah berikut:

/opt/glassfish6/bin/asadmin --port 4848 change-admin-password

Anda akan diminta untuk memberikan nama pengguna admin seperti yang ditunjukkan di bawah ini:

Enter admin user name [default: admin]>admin

Berikan nama pengguna admin default dan tekan tombol Enter. Anda akan diminta untuk memberikan kata sandi admin yang ada:

Enter the admin password> 

Cukup tekan tombol Enter. Anda akan diminta untuk mengatur kata sandi admin baru seperti yang ditunjukkan di bawah ini:

Masukkan kata sandi admin baru> Masukkan kembali kata sandi admin baru>

Tetapkan kata sandi aman Anda dan tekan Enter. Anda akan mendapatkan output berikut:

Command change-admin-password executed successfully.

Selanjutnya, disarankan juga untuk mengaktifkan HTTPS di Glassfish. Anda dapat melakukannya dengan menjalankan perintah berikut:

/opt/glassfish6/bin/asadmin --port 4848 enable-secure-admin

Anda akan diminta untuk memberikan nama pengguna dan kata sandi admin Anda untuk mengaktifkan HTTPS:

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.

Terakhir, mulai ulang layanan Glassfish untuk menerapkan perubahan:

systemctl restart glassfish

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Mengakses Antarmuka Web GlassFish

Pada titik ini, Glassfish diinstal dan dijalankan. Secara default, antarmuka web Glassfish mendengarkan pada port 8080 sementara antarmuka admin mendengarkan pada port 4848 . Pertama, akses antarmuka web Glassfish menggunakan URL http://your-server-ip:8080 . Anda akan melihat halaman berikut:

Selanjutnya, akses antarmuka admin Glassfish menggunakan URL https://your-server-ip:4848 . Anda akan diarahkan ke halaman login Glassfish:

Berikan nama pengguna, kata sandi admin Anda, dan klik Masuk tombol. Anda akan melihat antarmuka admin Glassfish di halaman berikut:

Klik server di panel kiri, Anda akan melihat layar berikut:

Dari sini, Anda dapat memulai ulang, menghentikan, dan melihat log Glassfish.

Klik Node di panel kiri, Anda akan melihat informasi node Glassfish di layar berikut:

Konfigurasikan Nginx sebagai Proxy Terbalik untuk Glassfish

Sebaiknya konfigurasikan Nginx sebagai proxy terbalik untuk mengakses antarmuka web Glassfish. Jadi Anda dapat mengakses aplikasi Anda tanpa menggunakan port 8080 .

Untuk melakukannya, pertama-tama instal paket Nginx dengan perintah berikut:

apt-get install nginx -y

Setelah terinstal, buat file konfigurasi virtual host Nginx menggunakan perintah di bawah ini:

nano /etc/nginx/conf.d/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     glassfish.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 verifikasi Nginx untuk kesalahan sintaks menggunakan perintah berikut:

nginx -t

Jika semuanya baik-baik saja, 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, restart layanan Nginx untuk menerapkan perubahan:

systemctl restart nginx

Anda juga dapat memeriksa status Nginx dengan perintah berikut:

systemctl status nginx

Anda akan mendapatkan output berikut:

? nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-11-07 05:02:58 UTC; 22s ago
       Docs: man:nginx(8)
    Process: 6790 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 6791 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 6873 (nginx)
      Tasks: 3 (limit: 4679)
     Memory: 5.1M
        CPU: 53ms
     CGroup: /system.slice/nginx.service
             ??6873 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ??6875 nginx: worker process
             ??6876 nginx: worker process

Nov 07 05:02:58 debian11 systemd[1]: Starting A high performance web server and a reverse proxy server...
Nov 07 05:02:58 debian11 systemd[1]: Started A high performance web server and a reverse proxy server.

Pada titik ini, Nginx diinstal dan dikonfigurasi untuk melayani antarmuka web Glassfish. Anda sekarang dapat mengakses antarmuka web Glassfish menggunakan URL http://glassfish.example.com .

Kesimpulan

Selamat! Anda telah berhasil menginstal server Glassfish dengan Nginx sebagai proxy terbalik di Debian 11. Sekarang Anda dapat mulai menerapkan aplikasi berbasis Java di server Glassfish. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan.


Debian
  1. Cara Menginstal HTTP Git Server dengan Nginx di Debian 11

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

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

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

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

  3. Cara Menginstal Odoo 11 di Ubuntu 16.04 dengan Nginx sebagai Proxy Terbalik

  1. Cara Menginstal Odoo 10 di Ubuntu 16.04 dengan Nginx 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