Запуск и остановка приложения

Способы запуска и остановки приложения на Linux

Приложение может быть запущено различными способами, в зависимости от его настроек.

Запуск и остановка приложения, установленного как служба

При установке приложения на Linux должен быть настроен автозапуск приложения.

Для Linux-систем, использующих при загрузке систему systemd, используются следующие команды:

  • Запуск приложения:

    # systemctl start tomcat

  • Остановка приложения:

    # systemctl stop tomcat

Для Linux-систем, использующих при загрузке скрипт инициализации /sbin/init, используются следующие команды:

  • Запуск приложения:

    # /etc/init.d/tomcat start

  • Остановка приложения:

    # /etc/init.d/tomcat stop

Запуск приложения вручную от имени текущего пользователя

При запуске вручную приложение будет запущено от имени текущего пользователя, с учетом прав пользователя на уровне операционной системы.

Не рекомендуется для систем, в которых приложение установлено как служба.

  • Запуск приложения:

    # su - nausd4
    # /opt/naumen/nausd4/tomcat/bin/startup.sh
  • Остановка приложения:

    # su - nausd4
    # /opt/naumen/nausd4/tomcat/bin/shutdown.sh

Команда для проверки остановки Tomcat

Команда для проверки остановки Tomcat (команда должна вывести пустой результат, если приложение остановлено):

pgrep -fa /opt/naumen/nausd4/tomcat

Настройка Tomcat для отображения прогресса запуска приложения

Отображение прогресса запуска приложения

Отображение страницы запуска приложения для браузеров Mozilla Firefox и Google Chrome.

Отображение страницы запуска приложения для остальных браузеров.

Настройка отображения прогресса запуска приложения

Для настройки отображения прогресса запуска приложения, выполните следующие действия:

  1. Из распакованного war-файла приложения скопируйте файл /путь/до/вашего/tomcat/webapps/sd/startup/startup.jar в каталог /путь/до/вашего/tomcat/lib/
  2. Отредактируйте конфигурационный файл /путь/до/вашего/tomcat/conf/server.xml:

    • Добавьте в тег Host атрибуты:

      • autoDeploy="true";
      • deployOnStartup="false".
    • Добавьте в тег Host строку:

      <Context path="" docBase="/путь/до/вашего/tomcat/webapps/ROOT" antiResourceLocking="false" privileged="true" />

    • Добавьте в тег Host строку:

      <Valve className="ru.naumen.tomcat.nsd.StartupProgressValve"/>

Пример итогового файла:

Copy
<Service name="Catalina">
    <Engine name="Catalina" defaultHost="localhost">
      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true" deployOnStartup="false">
            <Context path="" docBase="/путь/до/вашего/tomcat/webapps/ROOT" antiResourceLocking="false" privileged="true" />
             <!-- ..... -->
           <Valve className="ru.naumen.tomcat.nsd.StartupProgressValve"/>
      </Host>
    </Engine>
  </Service>

Поскольку файлы для отображения процесса загрузки ищутся от корня (приложение в данный момент еще не доступно), то для корректного отображения процесса в настройках обратного прокси сервера необходимо сменить location /sd/ на location /.

Без необходимости задействовать данный функционал, лучше изменения не вносить.

Copy
location / {
      proxy_pass         http://localhost:8080; # proxy на порт 8080 для сервера tomcat
      proxy_set_header   X-Real-IP $remote_addr; # Header с адресом клиента
      proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for; # Header с адресами proxy и клиента
      proxy_read_timeout 300s;
      client_max_body_size 20m; # Ограничение размера загружаемого файла (0 - Отключение проверки размера загружаемого файла)
   }

Замена логотипа на странице запуска приложения

Чтобы заменить логотип на странице запуска приложения, создайте каталог /путь/до/вашего/tomcat/startup_resources и поместите в него файл с нужным логотипом. Название файла с логотипом должно быть logo.png.