Служебный файл NGINX systemd: настройка и управление

Вот пример служебного файла systemd NGINX на английском языке:

[Unit]
Description=NGINX HTTP server
After=network.target
[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/usr/sbin/nginx -s reload
ExecStop=/usr/sbin/nginx -s stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target

В этом примере файл службы NGINX разделен на три раздела: [Unit], [Service]и [Install].

Раздел [Unit]содержит описание службы и указывает, что она должна запускаться после доступности сети.

Раздел [Service]определяет, как следует управлять службой. В этом случае для Typeустановлено значение forking, что означает, что NGINX будет порождать дочерние процессы. Параметр PIDFileуказывает расположение PID-файла, который NGINX создаст во время запуска. Команда ExecStartPreпроверяет конфигурацию NGINX на наличие синтаксических ошибок. Команда ExecStartзапускает NGINX, а команды ExecReloadи ExecStopиспользуются для перезагрузки или остановки службы NGINX соответственно. Параметр PrivateTmpсоздает частный временный каталог для NGINX.

В разделе [Install]указывается целевая многопользовательская среда, в которой должен быть запущен NGINX.

Вот несколько дополнительных методов, которые вы можете использовать для управления NGINX с помощью systemd:

  1. Запустите службу NGINX:

    sudo systemctl start nginx
  2. Остановить службу NGINX:

    sudo systemctl stop nginx
  3. Перезапустите службу NGINX:

    sudo systemctl restart nginx
  4. Перезагрузите конфигурацию NGINX без перезапуска службы:

    sudo systemctl reload nginx
  5. Проверьте состояние службы NGINX:

    sudo systemctl status nginx