Come installare Apache Tomcat 10 su Debian 10
Su questa pagina
- Prerequisiti
- Per iniziare
- Installa Java
- Installa Apache Tomcat
- Crea utente Tomcat Web Admin
- Consenti l'accesso remoto di Tomcat
- Crea un file di unità Systemd per Tomcat
- Configura Nginx per Tomcat
- Accedi all'applicazione Tomcat
- Conclusione
Apache Tomcat è open source e il server di applicazioni Web più popolare utilizzato per ospitare applicazioni basate su Java. Viene fornito con Java Servlet, JavaServer Pages (JSP), Java EL e fornisce un ambiente per eseguire codici Java. Tomcat offre un ricco set di funzionalità tra cui, leggero, altamente flessibile, ben documentato, offre un livello extra di sicurezza, maturo e altro ancora.
In questo tutorial, spiegheremo come installare Apache Tomcat 10 su un server Debian 10.
Prerequisiti
- Un server che esegue Debian 10.
- Un nome di dominio valido indicato con l'IP del tuo server.
- Sul server è configurata una password di root.
Iniziare
Prima di iniziare, aggiorna i tuoi pacchetti di sistema all'ultima versione con il seguente comando:
apt-get update -y
Una volta aggiornati tutti i pacchetti, puoi procedere al passaggio successivo.
Installa Java
Apache Tomcat è un'applicazione basata su Java. Quindi dovrai installare Java sul tuo server. Puoi installare Java con il seguente comando:
apt-get install default-jdk -y
Dopo l'installazione, verificare la versione di Java utilizzando il comando seguente:
java --version
Il seguente output ti mostrerà la versione di Java installata sul tuo server.
openjdk 11.0.11 2021-04-20 OpenJDK Runtime Environment (build 11.0.11+9-post-Debian-1deb10u1) OpenJDK 64-Bit Server VM (build 11.0.11+9-post-Debian-1deb10u1, mixed mode, sharing)
Una volta terminato, puoi procedere al passaggio successivo.
Installa ApacheTomcat
Al momento della stesura di questo tutorial, l'ultima versione disponibile di Apache Tomcat è la 10.0.7.
Innanzitutto, aggiungi l'utente per eseguire Apache Tomcat utilizzando il seguente comando:
useradd -m -d /opt/tomcat -U -s /bin/false tomcat
Successivamente, scarica Apache Tomcat 10 utilizzando il seguente comando:
wget https://mirrors.estointernet.in/apache/tomcat/tomcat-10/v10.0.7/bin/apache-tomcat-10.0.7.tar.gz
Una volta completato il download, estrai il file scaricato nella directory /opt/tomcat utilizzando il seguente comando:
tar -xzvf apache-tomcat-10.0.7.tar.gz -C /opt/tomcat --strip-components=1
Successivamente, imposta la proprietà corretta sulla directory /opt/tomcat utilizzando il seguente comando:
chown -R tomcat:tomcat /opt/tomcat/
Una volta terminato, puoi procedere al passaggio successivo.
Crea un utente amministratore Web Tomcat
Successivamente, dovrai creare un utente amministratore per accedere all'interfaccia di amministrazione di Tomcat. Puoi crearlo modificando il file tomcat-users.xml:
nano /opt/tomcat/conf/tomcat-users.xml
Aggiungere le seguenti righe prima dell'ultima riga:
<role rolename="manager-gui" /> <user username="manager" password="pasword" roles="manager-gui" /> <role rolename="admin-gui" /> <user username="admin" password="password" roles="manager-gui,admin-gui" />
Salva e chiudi il file dopo aver finito. Ora puoi procedere al passaggio successivo.
Consenti l'accesso remoto di Tomcat
Per impostazione predefinita, Tomcat è configurato per accedere solo dal sistema locale. Quindi dovrai configurare Tomcat in modo che sia possibile accedervi dal sistema remoto.
Innanzitutto, modifica il file context.xml per consentire l'accesso remoto all'applicazione Tomcat manager:
nano /opt/tomcat/webapps/manager/META-INF/context.xml
Rimuovi o commenta le seguenti righe:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
Salva e chiudi il file, quindi modifica il file context.xml per consentire l'accesso remoto all'applicazione gestore host Tomcat:
nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
Rimuovi le seguenti righe:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
Salva e chiudi il file quando hai finito. Ora puoi procedere al passaggio successivo.
Crea un file di unità Systemd per Tomcat
Successivamente, dovrai creare un file di unità systemd per gestire il servizio Tomcat. Puoi crearlo con il seguente comando:
nano /etc/systemd/system/tomcat.service
Aggiungi le seguenti righe:
[Unit] Description=Tomcat After=network.target [Service] Type=forking User=tomcat Group=tomcat Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64" Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom" Environment="CATALINA_BASE=/opt/tomcat" Environment="CATALINA_HOME=/opt/tomcat" Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid" Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC" ExecStart=/opt/tomcat/bin/startup.sh ExecStop=/opt/tomcat/bin/shutdown.sh [Install] WantedBy=multi-user.target
Salva e chiudi il file, quindi ricarica il demone systemd per applicare le modifiche:
systemctl daemon-reload
Successivamente, avvia il servizio Tomcat e abilitalo per l'avvio al riavvio del sistema con il seguente comando:
systemctl start tomcat
systemctl enable tomcat
Ora puoi controllare lo stato del servizio Tomcat usando il seguente comando:
systemctl status tomcat
Dovresti ottenere il seguente output:
? tomcat.service - Tomcat Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled) Active: active (running) since Thu 2021-07-01 04:58:39 UTC; 15s ago Process: 5706 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS) Main PID: 5713 (java) Tasks: 29 (limit: 2359) Memory: 154.7M CGroup: /system.slice/tomcat.service ??5713 /usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Djava.ut Jul 01 04:58:39 tomcat systemd[1]: Starting Tomcat... Jul 01 04:58:39 tomcat startup.sh[5706]: Tomcat started. Jul 01 04:58:39 tomcat systemd[1]: Started Tomcat.
A questo punto, Tomcat è avviato e in ascolto sulla porta 8080. Puoi verificarlo con il seguente comando:
ss -antpl | grep 8080
Dovresti ottenere il seguente output:
LISTEN 0 100 *:8080 *:* users:(("java",pid=5713,fd=43))
Al termine, puoi procedere al passaggio successivo.
Configura Nginx per Tomcat
Successivamente, si consiglia di utilizzare Nginx come proxy inverso per accedere all'applicazione Tomcat.
Innanzitutto, installa il server Web Nginx utilizzando il seguente comando:
apt-get install nginx -y
Una volta installato Nginx, crea un nuovo file di configurazione dell'host virtuale Nginx:
nano /etc/nginx/conf.d/tomcat.conf
Aggiungi le seguenti righe:
server { listen 80; server_name tomcat.example.com; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; 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/; } }
Salva e chiudi il file quando hai finito, quindi verifica Nginx per eventuali errori di sintassi con il seguente comando:
nginx -t
Dovresti ottenere il seguente output:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Successivamente, riavvia Nginx per applicare le modifiche:
systemctl restart nginx
Puoi anche controllare lo stato del servizio Nginx usando il seguente comando:
systemctl status nginx
Se tutto va bene, dovresti vedere il seguente output:
? 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 Thu 2021-07-01 05:00:32 UTC; 6s ago Docs: man:nginx(8) Process: 6322 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Process: 6323 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 6324 (nginx) Tasks: 2 (limit: 2359) Memory: 2.7M CGroup: /system.slice/nginx.service ??6324 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; ??6325 nginx: worker process Jul 01 05:00:32 tomcat systemd[1]: Starting A high performance web server and a reverse proxy server... Jul 01 05:00:32 tomcat systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument Jul 01 05:00:32 tomcat systemd[1]: Started A high performance web server and a reverse proxy server.
Una volta terminato, puoi procedere al passaggio successivo.
Accedi all'applicazione Tomcat
Ora apri il tuo browser web e accedi all'applicazione Tomcat utilizzando l'URL http://tomcat.example.com. Verrai reindirizzato alla seguente pagina:
Fare clic sull'app Gestisci. Dovresti vedere la pagina di accesso dell'app Manager:
Fornisci il nome utente e la password dell'amministratore e fai clic sul pulsante Accedi. Dovresti vedere la dashboard dell'app Manager nella pagina seguente:
Per accedere a Host Manager, fai clic su Host Manager dalla home page di Tomcat. Dovresti vedere la pagina di accesso di Tomcat Host Manager:
Fornisci il nome utente e la password dell'amministratore e fai clic sul pulsante Accedi. Dovresti vedere la dashboard di Tomcat Host Manager nella pagina seguente:
Conclusione
Congratulazioni! hai installato correttamente Apache Tomcat 10 sul server Debian 10. È ora possibile creare un'applicazione Java e ospitarla utilizzando Apache Tomcat. Non esitate a chiedermi se avete domande.