digital-garden/dev/snippet/Создание linux сервиса для Java приложения.md
Struchkov Mark ad35bf983f
All checks were successful
continuous-integration/drone/push Build is passing
Исправление даты
2024-09-08 00:56:18 +03:00

1.4 KiB
Raw Blame History

aliases tags date zero-link parents linked article
maturity/🌱
2023-11-20
../../../../garden/ru/meta/zero/00 Снипеты для Java
https://note.struchkov.dev/sozdaniie-linux-siervisa-dlia-prilozhieniia-spring-boot/

Для запуска jar файла в linux в виде сервиса, необходимо создать файл конфигурации.

sudo nano /etc/systemd/system/app_name_service.service

В этот файл вставляем примерно следующее. Не забудьте заменить в выделенных строках app_pathapp_name.

[Unit]
Description=App Description
After=network.target

[Service]
Type=simple
SyslogIdentifier=appdescription
WorkingDirectory=/app_path
PIDFile=/app_path/app_name.pid
ExecStart=/bin/sh -c "exec /usr/bin/java -jar app_name.jar & echo $! > /app_path/app_name.pid"
ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID

[Service]
Type=forking
PIDFile=/app_path/app_name.pid

[Install]
WantedBy=default.target

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

systemctl enable app_service

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

systemctl disable app_service