# Организация сервиса systemd
Сервис systemd
в Linux позволяет постоянно держать необходимые процессы запущенными, и перезапускать, если они аварийно выключаются.
# Создание конфигурационного файла для my_site.com в systemd
Настройка начинается с создания файла my_site.com.service
в директории /etc/systemd/system
и внесением в него такого контента скорректорованного под вашу ситуацию:
[Unit]
Description=SunEngine my_site.com
[Service]
WorkingDirectory=/site/my_site.com
ExecStart=/usr/bin/dotnet /site/my_site.com/Server/SunEngine.dll server
SyslogIdentifier=my_site.com
User=www-data
Restart=always
RestartSec=10
KillSignal=SIGINT
Environment=ASPNETCORE_ENVIRONMENT=Production
[Install]
WantedBy=multi-user.target
# Включение и запуск сервиса
Сервис сначала необходимо проинициализировть в системе:
systemctl enable my_site.com
и следующим шагом - запустить:
systemctl start my_site.com
Теперь SunEngine.dll server
будет работать в постоянном режиме. Если операционная система сервера будет перезагружена, сервис запустится при её новом запуске.
# Существующие проблемы
Перезагрузка сервиса при обновлении.
# Команды работы с systemd
Итак, для работы с сервивом вам достаточно освоить эти команды:
Включение (инициализация) процесса запуска my_site.com
при загрузке операционной системы:
systemctl enable my_site.com
Просмотр логов:
journalctl -fxeu my_site.com
Запуск процесса:
systemctl start my_site.com
Остановка процесса:
systemctl stop my_site.com
Перезапуск процесса:
systemctl restart my_site.com
Отключение запуска "my_site.com"
при загрузке системы:
systemctl disable my_site.com