SystemD автозагрузка node.js


На сервере у меня стоит CentOS7, и работают серверы для игрушек, написанные на node.js. Тут то я и столкнулся впервые в жизни с SystemD.



Файлы серсвисов имеют расширение .service и помещаются в каталог /etc/systemd/system

Требуется создать сервис, который будет запускать исполняемый файл и перезапускать его при вылете. Вот пример такого сервиса:

[Service]
ExecStart=/usr/bin/node /path/to/file ;исполняемый файл
Restart=always ;перезапускать при вылете
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=vasia ;системное имя сервиса
User=vasia ;группа
Group=vasia ;пользователь
Environment=NODE_ENV=production
WorkingDirectory=/path/to/dir ;рабочая дирректория

[Install]
WantedBy=multi-user.target

Создаем файл сервиса по шаблону и сохраняем /ect/systemd/system/myservice.service

Теперь можно проверить работоспособность
sudo systemctl start myservice.service
Если все окей, то самое время поставить сервис в автозагрузку:
sudo systemctl enable myservice.service
После перезагрузки машины, сервис должен стартовать автоматически

Список команд, которые могут пригодиться я поместил сюда http://itmynotes.blogspot.ru/2015/10/systemd.html

Комментарии

Популярные сообщения из этого блога

Siege Up! Editor (beta)

STM32F4 и программный выход в DFU

Git и Yandex.Disk