Apache Tomcat je webový server a kontejner servletů vyvinutý nadací Apache Software Foundation. Implementuje několik technologií Java EE včetně Java Servlet, JavaServer Pages, Java WebSocket a Java Expression language.
V dnešním tutoriálu vám ukážeme, jak nainstalovat a nakonfigurovat Apache Tomcat 9 s Oracle Java 8.
Krok 1) Nainstalujte Oracle Java
Chcete-li přidat úložiště Java, aktualizovat systém a nainstalovat Javu, zadejte do Terminálu postupně následující příkazy.
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-set-default
Vyberte „ano“ pro smlouvu a instalace bude pokračovat. Po dokončení instalace můžete po instalaci zkontrolovat verzi Java a domovskou stránku Java takto:
sudo java -version
sudo echo $JAVA_HOME
Krok 2) Vytvořte uživatele pro Tomcat
Obvykle vám z bezpečnostních důvodů nedoporučujeme spouštět Tomcat pod uživatelem root. Raději vám doporučujeme vytvořit nového uživatele a skupinu. Kromě toho se chystáme nainstalovat Tomcat do složky „/opt/tomcat“, kterou použijeme jako domovský adresář uživatele Tomcat.
Začněte vytvořením skupiny a uživatele.
sudo groupadd tomcat
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
Krok 3) Stáhněte a nainstalujte Tomcat
Binární verzi Tomcat 9 si můžete stáhnout z oficiální stránky pro stahování. Soubor „zip“ nebo „tar.gz“ si můžete stáhnout z binární distribuce v sekci „core“.
Chystáme se nainstalovat Tomcat do adresáře „/opt“. Balíček tedy stáhneme do tohoto umístění.
Změňte adresář na /opt
cd /opt
Zkopírujte adresu URL ke stažení a vložte ji do wget níže příkaz ke stažení balíčku Tomcat:
sudo wget https://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.14/bin/apache-tomcat-9.0.14.tar.gz
Extrahujte tar balíček.
sudo tar -xvzf apache-tomcat-9.0.14.tar.gz
Přejmenujte extrahovaný soubor na tomcat .
sudo mv apache-tomcat-9.0.14 tomcat
Upravte vlastnictví a oprávnění složky Tomcat.
sudo chown -R tomcat: tomcat
Udělte spouštěné oprávnění adresáři „bin“.
sudo chmod o+x /opt/tomcat/bin/
Krok 4) Vytvořte soubor „systemd“ pro správu služby Tomcat
Pro spuštění a zastavení služby Tomcat vytvoříme soubor s názvem „tomcat.service“ v „/etc/systemd/system“.
sudo vim /etc/systemd/system/tomcat.service
Přidejte do souboru následující obsah.
[Unit] Description=Tomcat 9 Server After=network.target [Service] Type=forking User=tomcat Group=tomcat Environment="JAVA_HOME=/usr/lib/jvm/java-8-oracle" Environment="JAVA_OPTS=-Xms512m -Xmx512m" 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 UMask=0007 RestartSec=10 Restart=always [Install] WantedBy=multi-user.target
Poté uložte a ukončete soubor.
Restartujte „systemctl deamon“.
sudo systemctl daemon-reload
Spusťte službu Tomcat.
sudo systemctl start tomcat
Monitorujte soubor protokolu Tomcat.
tail -f /opt/tomcat/logs/catalina.out
Pokud nedojde k žádné chybě, dostanete podobný výstup jako níže:
Zkontrolujte stav služby Tomcat.
sudo systemctl status tomcat
Povolit službu Tomcat při spouštění systému:
sudo systemctl enable tomcat
Výchozí port Tomcat je „8080“, takže je potřeba tento port povolit na firewallu Ubuntu.
sudo ufw allow 8080/tcp
Zkontrolujte stav brány firewall:
sudo ufw status
Krok 5) Nakonfigurujte webové rozhraní správy Tomcat
Upravte tomcat-users následujícím způsobem přidejte následující řádek před „“. Je zřejmé, že v následujícím příkazu budete muset podle potřeby nahradit název role, uživatelské jméno a heslo:
sudo vim /opt/tomcat/conf/tomcat-users.xml
<role rolename="admin-gui"/> <role rolename="manager-gui"/> <user username="tomcatadmin" password="abc123" roles="admin-gui,manager-gui"/>
Restartujte Tomcat, aby se nová konfigurace projevila.
sudo systemctl restart tomcat
Krok 6) Otestujte Tomcat
Pokud jste se dostali až sem úspěšně, měli byste být schopni procházet server Tomcat. Spusťte v prohlížeči následující adresu URL.
http://serverIp:8080
Stránka by se měla zobrazit následovně:
Klikněte na aplikaci správce nebo správce hostitele. Měli byste vidět výzvu k zadání uživatelského jména a hesla. Zadejte uživatelské jméno a heslo Tomcat, které bylo vytvořeno v souboru „tomcat-users.xml“ v kroku 5.
Pokud vše proběhlo v pořádku, měla by se zobrazit chyba „Přístup odepřen“. To je zcela normální.
Důvodem této chyby je, že webové rozhraní pro správu Tomcat je nakonfigurováno tak, aby omezovalo přístup ke správci aplikací a správci hostitelů pouze z místního hostitele. Proto by měl být povolen vzdálený přístup IP. Toto se nedoporučuje pro produkční prostředí.
Zde je však návod, jak tato omezení odstranit a povolit naši veřejnou IP.
Otevřete následující soubor pro správu nastavení aplikace:
sudo vim /opt/tomcat/webapps/manager/META-INF/context.xml
Pro konfigurace Host Manager:
sudo vim /opt/tomcat/webapps/host-manager/META-INF/context.xml
Upravte následující část v obou souborech. Nahraďte svou veřejnou IP adresu „vaše IP“ v příkazu níže.
<Context antiResourceLocking="false" privileged="true" > <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|yourIP" /> <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/> </Context>
Restartujte Tomcat a poté znovu procházejte Tomcat kliknutím na Manager App nebo Host Manager. Nyní byste neměli vidět žádné problémy.
sudo systemctl restart tomcat
App ManagerHost Manager
Stav serveru
Gratulujeme! Nyní jste úspěšně nainstalovali a nakonfigurovali Tomcat 9. Jak pro vás pokyny fungovaly? Dejte nám vědět svůj názor do komentářů níže a nezapomeňte se o tutoriál podělit se svými přáteli!