GNU/Linux >> Znalost Linux >  >> Debian

Jak nainstalovat Apache Tomcat 9 s Nginx Proxy na Debian 10

Tomcat je bezplatný, open-source a lehký aplikační server používaný k nasazení aplikací založených na Javě. Může být použit jako samostatný server nebo v kombinaci s jinými servery, jako je Apache a Nginx. Poskytuje rozšířenou funkčnost pro interakci se servlety Java a také implementuje několik technických specifikací platformy Java. V současné době je Tomcat jedním z nejrozšířenějších aplikačních serverů pro Javu.

V tomto tutoriálu vám ukážu, jak nainstalovat Tomcat 9 s Nginx na Debian 10.

Předpoklady

  • Server se systémem Debian 10.
  • Platný název domény s adresou IP vašeho serveru.
  • Na vašem serveru je nakonfigurováno heslo uživatele root.

Začínáme

Než začnete, je dobré aktualizovat mezipaměť APT na nejnovější verzi. Můžete jej aktualizovat spuštěním následujícího příkazu:

apt-get update -y

Jakmile bude mezipaměť vašeho systémového balíčku aktuální, můžete přejít k dalšímu kroku.

Instalovat Javu

Tomcat je Java aplikace, takže Java musí být nainstalována na vašem serveru. Pokud není nainstalován, můžete jej nainstalovat pomocí následujícího příkazu:

apt-get install default-jdk -y

Jakmile je Java nainstalována, můžete ověřit verzi Java pomocí následujícího příkazu:

java --version

Měli byste získat následující výstup:

openjdk 11.0.9.1 2020-11-04
OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2)
OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode, sharing)

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Instalovat Tomcat

Nejprve budete muset vytvořit vyhrazeného uživatele pro spuštění serveru Tomcat. Můžete jej vytvořit pomocí následujícího příkazu:

useradd -m -U -d /opt/tomcat -s /bin/false tomcat

Dále si stáhněte nejnovější verzi Tomcatu pomocí následujícího příkazu:

wget https://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.45/bin/apache-tomcat-9.0.45.tar.gz

Po dokončení stahování rozbalte stažený soubor pomocí následujícího příkazu:

tar -xvzf apache-tomcat-9.0.45.tar.gz

Dále přesuňte extrahovaný adresář do /opt pomocí následujícího příkazu:

mv apache-tomcat-9.0.45 /opt/tomcat/tomcat

Dále nastavte správná oprávnění a vlastnictví pomocí následujícího příkazu:

chown -R tomcat:tomcat /opt/tomcat/tomcat
chmod -R 755 /opt/tomcat/tomcat

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Vytvoření souboru služby Systemd pro Tomcat

Dále budete muset vytvořit soubor služby systemd pro správu služby Tomcat. Můžete jej vytvořit pomocí následujícího příkazu:

nano /etc/systemd/system/tomcat.service

Přidejte následující řádky:

[Unit]
Description=Tomcat 9.0 servlet container
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/default-java"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"

Environment="CATALINA_BASE=/opt/tomcat/tomcat"
Environment="CATALINA_HOME=/opt/tomcat/tomcat"
Environment="CATALINA_PID=/opt/tomcat/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

ExecStart=/opt/tomcat/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/tomcat/bin/shutdown.sh

[Install]
WantedBy=multi-user.target

Uložte a zavřete soubor a poté znovu načtěte démona systemd pomocí následujícího příkazu:

systemctl daemon-reload

Dále spusťte službu Tomcat a povolte její spuštění při restartu systému pomocí následujícího příkazu:

systemctl start tomcat
systemctl enable tomcat

Stav Tomcatu můžete také ověřit pomocí následujícího příkazu:

systemctl status tomcat

Měli byste získat následující výstup:

? tomcat.service - Tomcat 9.0 servlet container
   Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled)
   Active: active (running) since Wed 2021-04-14 05:41:21 UTC; 42s ago
  Process: 5784 ExecStart=/opt/tomcat/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
 Main PID: 5791 (java)
    Tasks: 30 (limit: 4701)
   Memory: 159.1M
   CGroup: /system.slice/tomcat.service
           ??5791 /usr/lib/jvm/default-java/bin/java -Djava.util.logging.config.file=/opt/tomcat/tomcat/conf/logging.properties -Djava.util.log

Apr 14 05:41:21 debian systemd[1]: Starting Tomcat 9.0 servlet container...
Apr 14 05:41:21 debian startup.sh[5784]: Tomcat started.
Apr 14 05:41:21 debian systemd[1]: Started Tomcat 9.0 servlet container.

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Konfigurace webového rozhraní Tomcat

Dále budete muset definovat uživatele pro přístup k webovému rozhraní Tomcat. Můžete jej definovat pomocí souboru tomcat-users.xml:

nano /opt/tomcat/tomcat/conf/tomcat-users.xml

Najděte sekci a přidejte nebo upravte následující řádky:

  <role rolename="admin-gui"/>
  <role rolename="manager-gui"/>
  <user username="tomcatadmin" password="password" roles="admin-gui,manager-gui"/>

Po dokončení uložte a zavřete soubor.

Ve výchozím nastavení je webové rozhraní Tomcat nakonfigurováno pro přístup pouze z localhost. Budete jej tedy muset nakonfigurovat pro externí přístup.

Pro aplikaci Správce upravte následující řádek:

nano /opt/tomcat/tomcat/webapps/manager/META-INF/context.xml

Pro aplikaci Host Manager upravte následující soubor:

nano /opt/tomcat/tomcat/webapps/host-manager/META-INF/context.xml

Odeberte následující řádek:

  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

Uložte a zavřete soubor a poté restartujte službu Tomcat, aby se změny projevily:

systemctl restart tomcat

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Konfigurace Nginx pro Tomcat

Dále budete muset nainstalovat a nakonfigurovat Nginx jako reverzní proxy pro Tomcat. Nejprve nainstalujte balíček Nginx pomocí následujícího příkazu:

apt-get install nginx -y

Po instalaci Nginx budete muset vytvořit nový konfigurační soubor virtuálního hostitele Nginx pro Tomcat. Můžete jej vytvořit pomocí následujícího příkazu:

nano /etc/nginx/conf.d/tomcat.conf

Přidejte následující řádky:

server {
  listen          80;
  server_name     tomcat.example.com;
  root            /opt/tomcat/tomcat/webapps/;


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

Uložte a zavřete soubor a poté ověřte, zda Nginx neobsahuje nějakou chybu syntaxe:

nginx -t

Měli byste vidět následující výstup:

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

Poté restartujte službu Nginx, aby se změny aplikovaly:

systemctl restart nginx

Dále ověřte stav služby Nginx pomocí následujícího příkazu:

systemctl status nginx

Měli byste vidět následující výstup:

? 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 Wed 2021-04-14 05:57:03 UTC; 1min 38s ago
     Docs: man:nginx(8)
  Process: 6852 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
  Process: 6853 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
 Main PID: 6854 (nginx)
    Tasks: 3 (limit: 4701)
   Memory: 4.0M
   CGroup: /system.slice/nginx.service
           ??6854 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           ??6855 nginx: worker process
           ??6856 nginx: worker process

Apr 14 05:57:03 debian systemd[1]: Starting A high performance web server and a reverse proxy server...
Apr 14 05:57:03 debian systemd[1]: Started A high performance web server and a reverse proxy server.

V tomto okamžiku je Nginx nakonfigurován pro přístup k Tomcat. Nyní můžete přejít k dalšímu kroku.

Přístup k webovému uživatelskému rozhraní Tomcat

Nyní otevřete webový prohlížeč a přejděte k webovému uživatelskému rozhraní Tomcat pomocí adresy URL http://tomcat.example.com . Měli byste vidět následující stránku:

Klikněte na Správce Aplikace , měli byste vidět následující stránku:

Zadejte své uživatelské jméno, heslo správce aplikace a klikněte na Přihlásit se knoflík. Měli byste vidět následující stránku:

Můžete také kliknout na Správce hostitele pro přístup k aplikaci Host Manager, jak je uvedeno níže:

Závěr

Gratulujeme! úspěšně jste nainstalovali Tomcat s Nginx jako reverzní proxy na Debian 10. Nyní můžete svou Java aplikaci snadno nasadit pomocí Tomcatu. Neváhejte se mě zeptat, pokud máte nějaké otázky.


Debian
  1. Jak nainstalovat Apache ZooKeeper na Debian 10

  2. Jak nainstalovat Apache Cassandra na Debian 11

  3. Jak nainstalovat Yii Framework na Debian VPS s Nginx

  1. Jak nainstalovat Odoo 11 na Debian 9 s Nginx jako reverzní proxy

  2. Jak nainstalovat Odoo 12 na Debian 10 s Nginx jako reverzní proxy

  3. Jak nainstalovat WonderCMS s Nginx na Debian 11

  1. Jak nainstalovat Apache Tomcat na Debian 11 (krok za krokem)

  2. Jak nainstalovat GlassFish s Nginx jako reverzní proxy na Debian 10

  3. Jak nainstalovat WildFly s Nginx jako reverzní proxy na Debian 10