Шаблоны для подсистемы Systemd
Автор - Ковалев Антон
Дата последнего редактирования - 12.07.2024
Подробнее с подсистемой systemd, можно ознакомиться на данной странице.
* Отредактируйте шаблон в соответствии с вашими настройками перед запуском службы!
Для скачивания файлов можно воспользоваться командами
GitFlic
curl -O "https://gitflic.ru/project/kovalevaa/utils/blob/raw?file=systemd/gitflic.service"
curl -O "https://gitflic.ru/project/kovalevaa/utils/blob/raw?file=systemd/gfagent.service"
GitFlic
Модуль gitflic.service
[Unit]
Description=Startup unit for run GitFlic service
Documentation=https://docs.gitflic.ru/
After=network.target
[Service]
Type=simple
User=gitflic
Group=gitflic
WorkingDirectory=/opt/gitflic/
ExecStart=/usr/bin/java -jar /opt/gitflic/bin/gitflic.jar --spring.config.additional-location=file:/etc/gitflic/
ExecStop=/bin/kill -s 15 $MAINPID
Restart=on-failure
RestartSec=30
[Install]
WantedBy=multi-user.target
Агент GitfFlic Runner
Модуль gfagent.service
[Unit]
Description=GitFlic-Runner
After=gitflic.service
Requires=gitflic.service
[Service]
User=gitflic-agent
Group=gitflic-agent
WorkingDirectory=/home/gitflic-agent/gitflic-runner
ExecStart=/usr/bin/java -jar runner.jar start --config=config/application.properties
ExecStop=/bin/kill -s 15 $MAINPID
StandardOutput=journal
StandardError=journal
Restart=on-failure
RestartSec=10
TimeoutStartSec=2min
[Install]
WantedBy=multi-user.target
Краткое описание файлов шаблонов юнитов systemd
Юниты systemd, по умолчанию, располагаются в трех директориях:
/usr/lib/systemd/system/ – юниты, установленные с помощью пакетов RPM, DEB
/run/systemd/system/ — юниты, созданные в рантайме
/etc/systemd/system/ — юниты, созданные системным администратором
[Unit] - Декларация модуля и его свойства
Description - Описание модуля
After - Запуск модуля после запуска определенных служб
Requires - Указание что для запуска сервиса необходим другой запущенный сервис
Wants - Декларация что для запуска сервиса необходим другой запущенный сервис
Documentation - Источник Документация к сервису
[Service] - Указание какими командами и под каким пользователем надо запускать сервис
Type - Тип сервиса
WorkingDirectory - Установка рабочего каталога, он делается текущим перед запуском стартап команд
User - Пользователь , под которым надо стартовать сервис
Group - Группа, под которым надо стартовать сервис
Environment - Переменные окружения
ExecStart - Команда для запуска сервиса
ExecStop - Команда для остановки сервиса
Restart - Указание, стратегии перезапуска сервиса
RestartSec - Время ожидания перед повторным запуском службы в секундах
StandardOutput - Указание, куда перенаправлять стандартный поток вывода
StandardError - Указание, куда перенаправлять поток ошибок
TimeoutStartSec - Таймаут перед запуском службы
[Install] - Описание уровня запуска сервиса
WantedBy - Указание уровня запуска