GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer GlassFish avec Nginx en tant que proxy inverse sur Debian 10

GlassFish est une implémentation open-source et la première mondiale de la plate-forme Java développée par Eclipse Foundation. Il s'agit d'un serveur d'applications léger qui prend en charge différentes technologies basées sur Java telles que Enterprise JavaBeans, JPA, JavaServer Faces, JMS et bien d'autres. GlassFish est livré avec une console d'administration simple et facile à utiliser avec un outil de mise à jour pour les mises à jour et les composants complémentaires.

Dans ce tutoriel, nous expliquerons comment installer GlassFish sur Debian 10 avec Nginx comme proxy inverse.

Exigences

  • Un serveur exécutant Debian 10.
  • Un mot de passe root est configuré sur votre serveur.

Mise en route

Avant de commencer, vous devrez mettre à jour votre système avec la dernière version. Vous pouvez le faire en exécutant la commande suivante :

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

Une fois votre serveur mis à jour, redémarrez votre serveur pour appliquer les modifications.

Installation de Java

GlassFish nécessite l'installation de la version 8 de Java sur votre serveur. Vous devrez donc supprimer Java si une autre version de Java est installée sur votre système.

Vous pouvez supprimer la version 11 de Java avec la commande suivante :

apt-get remove openjdk-11-jre-headless

Ensuite, vous devrez télécharger la version 8 de Java depuis leur site officiel. Une fois le téléchargement terminé, extrayez le fichier téléchargé dans le répertoire /usr/lib/jvm avec la commande suivante :

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

Ensuite, définissez la version Java par défaut avec la commande suivante :

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

Vous devriez obtenir le résultat suivant :

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

Vous pouvez maintenant vérifier la version Java avec la commande suivante :

java -version

Vous devriez voir le résultat suivant :

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)

Installer GlassFish

Tout d'abord, installez les packages requis avec la commande suivante :

apt-get install wget unzip -y

Ensuite, téléchargez la dernière version de GlassFish avec la commande suivante :

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

Une fois le téléchargement terminé, extrayez le fichier téléchargé dans le répertoire /opt à l'aide de la commande suivante :

unzip latest-glassfish.zip -d /opt/

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Créer un service GlassFish

Ensuite, vous pouvez créer un fichier de service systemd pour gérer le service GlassFish. Vous pouvez le créer avec la commande suivante :

nano /etc/systemd/system/glassfish.service

Ajoutez le contenu suivant :

[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

Enregistrez et fermez le fichier. Ensuite, rechargez le démon systemd avec la commande suivante :

systemctl daemon-reload

Ensuite, démarrez le service GlassFish et activez-le au démarrage avec la commande suivante :

systemctl start glassfish
systemctl enable glassfish

Vous pouvez maintenant vérifier l'état du service GlassFish avec la commande suivante :

systemctl status glassfish

Vous devriez obtenir le résultat suivant :

? 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)

Activer la console d'administration GlassFish

Par défaut, le mot de passe de la console d'administration GlassFish n'est pas défini. Vous devrez donc mettre à jour le mot de passe administrateur.

Exécutez la commande suivante pour définir le mot de passe administrateur :

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

Fournissez votre mot de passe souhaité et appuyez sur Entrée. Une fois le mot de passe défini, vous devriez voir le résultat suivant :

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.

Ensuite, vous devrez activer la fonction d'administration sécurisée. Vous pouvez le faire avec la commande suivante :

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

Fournissez votre nom d'utilisateur et votre mot de passe d'administrateur, puis appuyez sur Entrée pour activer l'administrateur sécurisé comme indiqué ci-dessous :

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.

Ensuite, redémarrez le service GlassFish pour appliquer les modifications de configuration :

systemctl restart glassfish

Accéder à GlassFish

Par défaut, l'application GlassFish s'exécute sur le port 8080. Vous pouvez y accéder en visitant l'URL http://your-server-ip:8080. Vous devriez voir la page suivante :

La console d'administration GlassFish s'exécute sur le port 4848. Vous pouvez y accéder en visitant l'URL http://your-server-ip:4848. Vous devriez voir la page de connexion GlassFish :

Indiquez votre nom d'utilisateur et votre mot de passe d'administrateur, puis cliquez sur Connexion bouton. Vous devriez voir la console d'administration GlassFish dans l'écran suivant :

Déployer l'application sur GlassFish

GlassFish est maintenant installé et configuré, il est temps de déployer un exemple d'application sur GlassFish.

Tout d'abord, téléchargez l'application hello.war avec la commande suivante :

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

Ensuite, déployez l'application hello.war avec la commande suivante :

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

Vous devriez voir le résultat suivant :

  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.

Pour accéder à votre application, ouvrez votre navigateur Web et saisissez l'URL http://your-server-ip:8080/hello. Vous serez redirigé vers la page suivante :

Configurer Nginx en tant que proxy inverse

Maintenant, vous devrez configurer Nginx en tant que proxy inverse pour la demande de proxy provenant des ports 80 à 8080.

Tout d'abord, installez Nginx avec la commande suivante :

apt-get install nginx -y

Une fois le nginx installé, créez un fichier d'hôte virtuel Nginx pour GlassFish avec la commande suivante :

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

Ajoutez les lignes suivantes :

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

Enregistrez et fermez le fichier. Ensuite, vérifiez Nginx pour toute erreur de syntaxe avec la commande suivante :

nginx -t

Vous devriez obtenir le résultat suivant :

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

Ensuite, activez l'hôte virtuel Nginx et redémarrez le service Nginx avec la commande suivante :

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

Vous pouvez maintenant accéder à votre application en visitant l'URL http://example.com.

Toutes nos félicitations! vous avez installé avec succès GlassFish avec Nginx en tant que proxy inverse sur Debian 10. Vous pouvez désormais déployer facilement n'importe quelle application Java sur votre serveur.


Debian
  1. Comment installer Odoo sur CentOS 8 avec Nginx en tant que proxy inverse

  2. Comment installer Odoo 14 sur CentOS 8 avec Nginx en tant que proxy inverse

  3. Comment installer Odoo sur Ubuntu 20.04 avec Nginx en tant que proxy inverse

  4. Comment installer Odoo 12 sur Ubuntu 18.04 avec Nginx en tant que proxy inverse

  5. Installer Odoo sur un VPS Debian 8 avec Nginx comme reverse proxy

Comment installer WildFly Java Application Server avec Nginx Reverse Proxy sur Ubuntu 20.04

Comment installer Apache Tomcat 9 avec Nginx Proxy sur Debian 10

Comment installer GlassFish Java Server avec Nginx en tant que proxy inverse sur Debian 11

Comment installer Nextcloud 10 avec Nginx sur Debian 8

Installez Plex Media Server sur Debian 11 Bullseye avec Nginx Reverse Proxy

Comment installer phpMyAdmin avec Nginx sur Debian 11