Tomcat 9, инсталация и основна конфигурация в Ubuntu 18.04

за Tomcat 9

В следващата статия ще видим как можем да инсталираме Tomcat 9 на Ubuntu 18.04. Относно инсталирането на това контейнер с поддръжка за сървлети и JSP наред с други, колега вече ни говори преди няколко години в a artículo.

Apache Tomcat е изпълнение на отворен код Java Servlet, JavaServer Pages, Java Expression Language и Java WebSocket технологии. Той предлага цялостно решение за тези, които трябва да изпълнят този тип съдържание, сред които са големи организации и корпорации до МСП, защото ако нещо характеризира този инструмент, това е неговото голяма мащабируемост.

Преди да се потопим в инсталацията на Tomcat 9, трябва да инсталираме OpenJDK.

Инсталирайте OpenJDK

La инсталиране на пакета OpenJDK на Ubuntu 18.04 това е съвсем просто:

инсталирайте jdk по подразбиране tomcat 9

sudo apt install default-jdk

Ако предпочитате да инсталирате Oracle Java вместо OpenJDK, вижте инструкции че колега е публикувал преди време.

Създайте потребител за Tomcat

А сега нека създайте нов системен потребител и група с домашна директория в / opt / tomcat, който ще стартира услугата Tomcat:

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

Изтеглете Tomcat 9

Ние ще използваме wget и разархивирайте за изтегляне и извличане на файла Tomcat 9. Можем да ги инсталираме, като напишем:

sudo apt install unzip wget

Нека изтеглим най-новата версия на Tomcat 9.0.x от изтегляне на страницата. Към момента на писане, последната версия е 9.0.10.

Когато сме наясно с файла за изтегляне, ще преминем към / tmp директория и изтеглете zip файла с wget.

изтегляне tomcat 9

cd /tmp

wget http://apache.rediris.es/tomcat/tomcat-9/v9.0.10/bin/apache-tomcat-9.0.10.zip

След като изтеглянето приключи, ще извлечем zip файла и ще го преместим в директорията / opt / tomcat:

unzip apache-tomcat-*.zip

sudo mv apache-tomcat-*/ /opt/tomcat/

за имат повече контрол над версиите и актуализациите, ще създадем символна връзка, която ще сочи към инсталационната директория:

sudo ln -s /opt/tomcat/apache-tomcat-* /opt/tomcat/latest

По-късно, ако искате да актуализирате вашата инсталация на Tomcat, можете да разопаковате най-новата версия и да промените символната връзка, за да сочи към последната версия.

Потребителят на tomcat, който създадохме по-рано, трябва да има достъп до директория Tomcat 9. Ще трябва да променим собствеността на директорията на потребител и група на tomcat:

sudo chown -R tomcat: /opt/tomcat

също ние ще направим скриптовете в bin директорията изпълними:

sudo chmod +x /opt/tomcat/latest/bin/*.sh

Създайте файл на systemd единица

За да стартирате Tomcat като услуга, ще създадем нов единичен файл, наречен tomcat.service. Това трябва да бъде запазено вътре в директорията / etc / systemd / system / със следното съдържание:

tomcat.service файл

[Unit]
Description=Tomcat 9 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/latest"
Environment="CATALINA_HOME=/opt/tomcat/latest"
Environment="CATALINA_PID=/opt/tomcat/latest/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

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

[Install]
WantedBy=multi-user.target

Проверете състоянието на услугата

tomcat 9 статус

Ще уведомим systemd, че сме създали нов единичен файл и ще стартираме услугата Tomcat работи:

sudo systemctl daemon-reload

sudo systemctl start tomcat

Можете да проверете състоянието на услугата със следната команда:

sudo systemctl status tomcat

Ако няма грешки, можете активирайте услугата Tomcat да стартира автоматично по време на зареждане:

sudo systemctl enable tomcat

Задайте защитната стена

Ако вашият компютър или сървър са защитени от защитна стена и вие искате влезте в интерфейса на Tomcat извън вашата локална мрежа, ще трябва да отворите порт 8080. Тази стъпка е опасна в някои ситуации.

За да разрешите трафик на порт 8080, въведете следната команда:

отворен порт 8080 ufw tomcat 9

sudo ufw allow 8080/tcp

Конфигурирайте интерфейса на Tomcat Web Manager

След като инсталирахме Tomcat 9 в нашия Ubuntu, следващата стъпка е създайте потребител, който има достъп до уеб административния интерфейс. Потребителите на Tomcat и техните роли са дефинирани във файла tomcat-users.xml.

Ако отворите файла, ще видите, че той е пълен с коментари и примери.

sudo vim /opt/tomcat/latest/conf/tomcat-users.xml

За да добавите нов потребител, който има достъп до уеб интерфейса на tomcat (manager-gui и admin-gui) Имаме нужда от дефинирайте потребителя в края на файла tomcat-users.xml както е показано по-долу. Не забравяйте да промените потребителското име и паролата на нещо по-сигурно:

tomcat 9 потребителски файл

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

По подразбиране, Уеб интерфейсът за администрация на Tomcat е конфигуриран да позволява достъп само от локален хост. Ако имате нужда от достъп до уеб интерфейса от отдалечен IP, отворете следните файлове и коментирайте или изтрийте редовете, отбелязани в екранните снимки:

sudo vim /opt/tomcat/latest/webapps/manager/META-INF/context.xml

tomcat файл с мениджър на контекст

sudo vim /opt/tomcat/latest/webapps/host-manager/META-INF/context.xml

host-manager контекст tomcat 9 файл

Ако имате нужда достъп до уеб интерфейса само от определен IPВместо да коментирате блоковете, добавете публичния си IP към списъка. Разрешените IP адреси се добавят, разделени с вертикална лента |. Можете да добавяте уникални IP адреси или да използвате регулярни изрази.

Тествайте инсталацията

Отворете браузъра си и напишете: http: // your-domain-o-ip: 8080. Ако приемем, че инсталацията е успешна, ще се появи екран като следния:

начален екран на tomcat 9.0.10

El Панел за управление на уеб приложения на Tomcat се предлага в http://tu-dominio-o-ip: 8080/manager/html. Тук можете да управлявате вашите приложения.

tomcat 9 мениджър на приложения

El Мениджър на виртуални машини Tomcat се предлага в http://tu-dominio-o-ip: 8080/host-manager/html. Оттук можете да управлявате виртуалните хостове на Tomcat.

tomcat 9 виртуална машина мениджър

Ви Посетете Официална документация от Tomcat 9  и научете повече за неговите характеристики.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.

  1.   Astivpl каза той

    Отличен урок!

  2.   Серджо диас каза той

    отличен ясен и кратък урок

  3.   Карлос каза той

    Безупречен урок. Освен обясненото, трябваше само да дам разрешения за изпълнение на създадения файл tomcat.service и да модифицирам пътя на "JAVA_HOME" във файла tomcat.service и всичко работи.

  4.   Хорхе каза той

    Здравейте Отлично е, но не можах да продължа, защото не знам къде да напиша частта

    [Мерна единица]
    Описание = Tomcat 9 сервлетен контейнер
    След = network.target

    [Обслужване]
    Тип = разклоняване

    Потребителят = котарак
    Група = котарак

    Околна среда = »JAVA_HOME = / usr / lib / jvm / default-java»
    Околна среда = »JAVA_OPTS = -Djava.security.egd = файл: /// dev / urandom»

    Околна среда = »CATALINA_BASE = / opt / tomcat / най-нова»
    Околна среда = »CATALINA_HOME = / opt / tomcat / най-новите»
    Околна среда = »CATALINA_PID = / opt / tomcat / latest / temp / tomcat.pid»
    Околна среда = »CATALINA_OPTS = -Xms512M -Xmx1024M -сървър -XX: + UseParallelGC»

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

    [Инсталирай]
    WantedBy = multi-user.target

    трябва да го направите в терминала.
    поздрави

    1.    Дамиен Амоедо каза той

      Здравейте. Кодът, към който се позовавате, трябва да бъде поставен във файла /etc/systemd/system/tomcat.service. Използвайте някакъв редактор, за да създадете или редактирате файла. Salu2.

  5.   Рафаел каза той

    Здравейте, когато се опитвам да намеря страницата, която ви казва, че сте инсталирали tomcat успешно, тя отбелязва няколко мрежови грешки. Опитах с localhost, изтрих и поставих това, което пише, че коментираме, за да оставя други ips, но дори не и с localhost, който мога да свържа, и като че съм поставил командата да разреша трафик на порт 8080

  6.   D87 каза той

    Не ми е послужило

  7.   Изабел каза той

    Много добре благодаря.

  8.   Бернардино каза той

    Много добре. Благодаря много.

  9.   ангел каза той

    ПЕРФЕКТЕН урок !!!

    Хиляди благодарности !!!!!

  10.   Хосе каза той

    Отличен урок, но имам проблем при създаването при създаването на файла tomcat.service, ако съм конфигуриран

    [Мерна единица]
    Описание = Tomcat 9 сервлетен контейнер
    След = network.target

    [Обслужване]
    Тип = разклоняване

    Потребителят = котарак
    Група = котарак

    Околна среда = »JAVA_HOME = / usr / lib / jvm / java-11-openjdk-amd64 / jre»
    Околна среда = »JAVA_OPTS = -Djava.security.egd = файл: /// dev / urandom»

    Околна среда = »CATALINA_BASE = / opt / tomcat /»
    Околна среда = »CATALINA_HOME = / opt / tomcat /»
    Околна среда = »CATALINA_PID = / opt / tomcat / temp / tomcat.pid»
    Околна среда = »CATALINA_OPTS = -Xms512M -Xmx1024M -сървър -XX: + UseParallelGC»
    Околна среда = »CATALINA_OUT = / opt / tomcat / logs / catalina.out

    ExecStart = / изберат / котарак / хамбар / startup.sh
    ExecStop = / изберат / котарак / хамбар / shutdown.sh

    [Инсталирай]
    WantedBy = multi-user.target

    при изпълнение на стартиране на системата tomcat.service ми дава следната грешка:

    Задача за tomcat.service не бе успешна, защото процесът на управление излезе с код за грешка.
    Вижте "systemctl статус tomcat.service" и "journalctl -xe" за подробности.

    стартиране на командата systemctl статус tomcat.service показва:
    tomcat.service - контейнер за сървлети Tomcat 9
    Заредено: заредено (/etc/systemd/system/tomcat.service; деактивирано; предварително зададена от доставчика: активирана)
    Активно: неуспешно (резултат: изходен код) от четвъртък 2020-07-09 13:14:25 CST; Преди 2 минути и 12 секунди
    Процес: 5851 ExecStart = / opt / tomcat / bin / startup.sh (код = излязъл, статус = 2)

    09 юли 13:14:25 хост-120901 systemd [1]: Стартиране на контейнер за сервлети Tomcat 9 ...
    09 юли 13:14:25 хост-120901 systemd [1]: tomcat.service: Процесът на управление е излязъл, код = излязъл, статус = 2 / НЕВАРИДЕН ДАРГУМЕН
    09 юли 13:14:25 хост-120901 systemd [1]: tomcat.service: Неуспешно с резултат 'изходен код'.
    09 юли 13:14:25 хост-120901 systemd [1]: Неуспешно стартиране на контейнер за сервлети Tomcat 9.

    и когато стартирате journalctl -xe

    09 юли 13:14:25 хост-120901 startup.sh [5869]: докосване: не може да се докосне '/opt/tomcat//logs/catalina.out': Разрешението е отказано
    09 юли 13:14:25 хост-120901 startup.sh [5851]: /opt/tomcat/bin/catalina.sh: 505: не може да се създаде /opt/tomcat//logs/catalina.out: Разрешението е отказано
    09 юли 13:15:01 хост-120901 CRON [5879]: pam_unix (cron: сесия): сесия, отворена за потребителски корен от (uid = 0)
    09 юли 13:15:01 хост-120901 CRON [5880]: (корен) CMD (команда -v debian-sa1> / dev / null && debian-sa1 1 1)
    09 юли 13:15:01 хост-120901 CRON [5879]: pam_unix (cron: сесия): сесията е затворена за потребителски корен
    09 юли 13:16:32 хост-120901 wpa_supplicant [707]: wlp2s0: Отхвърляне на спусъка за сканиране, тъй като един вече е в очакване
    09 юли 13:17:01 хост-120901 CRON [5905]: pam_unix (cron: сесия): сесия, отворена за потребителски корен от (uid = 0)
    09 юли 13:17:01 хост-120901 CRON [5906]: (корен) CMD (cd / && run-parts –report /etc/cron.hourly)
    09 юли 13:17:01 host120901 CRON [5905]: pam_unix (cron: session): сесията е затворена за потребителския корен

    Можете ли да ми обясните, че имам моля

  11.   Хосе каза той

    Мей много благодаря, учителят поиска тези пишки през 2020 г.

  12.   Торстен каза той

    Ganz tolles Урок. Трябва да се продава с минимален минимален Linux Kenntnissen. Проблем waren ehr "externer" Natur, wie das richtige Eintragen eine Proxys. Hab die Installation mit 10.0.6, ging ohne Проблем.
    Nur so, die Sache mit der context.xml steht zweimal drink.

    Благодаря.