Установка Apache Tomcat 9 на CentOS 7 довольно простая задача, и она не займет более 5 минут для установки Tomcat 9 на виртуальный сервер CentOS7.
Apache Tomcat 9 построен на последней 8 спецификаций Java EE, таких как: Servlet 4.0 EL 3.1, JSP 2.4 и WebSocket 1,2. Кроме того, он имеет меньше ошибок, исправлений безопасности и основные улучшения, такие как:
- Реализует HTTP / 2
- Поддерживает TLS на виртуальном хостинге
- Поддерживает производительность OpenSSL с NIO/NIO2 APIs
- Использует OpenSSL для TLS с разъемами JSSE
- SNI и несколько сертификатов поддерживаются всеми коннекторами
- OpenSSL вариант движка для NIO и NiO2
- и многое другое …
Создаем группу пользователей:
# sudo groupadd tomcat
Создаем пользователя:
# sudo useradd -M -s /sbin/nologin -g tomcat -d /opt/tomcat tomcat
Переходим в домашний каталог:
# cd ~
Переходим на сайт tomcat и копирую ссылку на скачивание последней версию и скачиваем ее на компьютер:
# wget https://apache-mirror.rbc.ru/pub/apache/tomcat/tomcat-9/v9.0.52/bin/apache-tomcat-9.0.52.tar.gz
Создаем директорию:
# mkdir /opt/tomcat
Разархивируем файл:
# tar xvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1
Переходим в каталог tomcat:
# cd /opt/tomcat
Назначаем группу tomcat каталогу:
# chgrp -R tomcat /opt/tomcat
Назначаем для группы tomcat разрешение на чтения каталогу conf:
# chmod -R g+r conf
# chmod g+x conf
Задаем пользователя tomcat владельцем каталогов:
# chown -R tomcat webapps/ work/ temp/ logs/
Создаем демон systemd:
# mcedit /etc/systemd/system/tomcat.service
Вставляем следующее содержимое:
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/java/jdk1.8.0_271-amd64/jre
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/bin/kill -15 $MAINPID
User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
Обращаю ваше внимание на строчку «JAVA_HOME» здесь вы должны посмотреть указать текущий каталог. Посмотреть можно командой:
# echo $JAVA_HOME
Перечитываем демоны:
# systemctl daemon-reload
Запускаем, проверяем статус и добавляем в атозагрузку:
# systemctl start tomcat
# systemctl status tomcat
# systemctl enable tomcat