Установка Tomcat на Ubuntu 18.04

Автор: | 29.04.2019

Начнем с того, что скачаем архив с веб-сервером в папку /opt:

  • cd /opt
  • wget -O tomcat9.tar.gz http://mirror.olnevhost.net/pub/apache/tomcat/tomcat-9/v9.0.14/bin/apache-tomcat-9.0.16.tar.gz

Разархивируем и переименуем его:

  • tar -xvzf tomcat9.tar.gz
  • mv apache-tomcat-9.0.16 tomcat9

Не рекомендуется запускать Tomcat от имени пользователя root, поэтому по соображениям безопасности мы создадим нового системного пользователя:

  • sudo useradd -r tomcat9 -d /opt/tomcat9 —shell /bin/false

Далее создадим новый системный файл для веб-сервера:

  • sudo nano /etc/systemd/system/tomcat9.service

Заполним его следующим содержимым:

Сохраним файл tomcat9.service. Выполните следующую команду, чтобы перезагрузить конфигурацию systemd manager:

  • sudo systemctl daemon-reload

Теперь мы можем запустить сервис Apache Tomcat 9:

  • sudo systemctl start tomcat9

Чтобы включить службу Tomcat при загрузке выполните:

  • sudo systemctl enable tomcat9

Мы можем проверить состояние службы Tomcat 9 и убедиться, что она правильно установлена, выполнив следующую команду:

  • sudo systemctl status tomcat9

Apache Tomcat прослушивает порт 8080 http://IP_address:8080

Мы также можем настроить веб-сервер Apache2 в качестве обратного прокси-сервера для веб-сервера Tomcat 9, поэтому Apache2 будет принимать все запросы через порт 80 перед Tomcat 9, который работает на порту 8080.

Нам нужно включить два модуля Apache2: proxy и proxy_http. Мы можем использовать команду a2enmod, чтобы включить их:

  • sudo a2enmod proxy
  • sudo a2enmod proxy_http

Затем мы должны перезапустить Apache2, чтобы изменения вступили в силу:

  • sudo systemctl restart apache2

Создайте или измените конфигурацию виртуального хоста для вашего домена и добавьте или измените директивы прокси (ProxyRequests, ProxyPass и ProxyPassReverse):

  • sudo nano /etc/apache2/sites-available/you-domain.conf
  • sudo a2ensite you-domain.conf
  • sudo systemctl restart apache2

Теперь мы можем получить доступ к веб-серверу Tomcat не используя порт 8080 в веб-браузере, т.е. мы можем получить к нему доступ с помощью http://you-domain

Для перезагрузки сервера:

  • service tomcat9 stop/start
  • systemctl daemon-reload
  • service tomcat9 status