Так можем ли мы использовать сценарии запуска навсегда плюс для решения вышеуказанных задач? Ответ, конечно, да, но он немного неприятен, и официальному навсегда не хватает подробных документов конфигурации. Я также взял несколько объездов при настройке, поэтому я буду вдаваться в подробности ниже.
ПРИМЕЧАНИЕ. Экспериментальная среда этой статьи является Suver Server 12.04 LTS x86_64, а конфигурация на CentOS проще.
Сначала я подумал о том, чтобы добавить Forever Start XXX в /etc/rc.local, но я обнаружил, что Ubuntu (так же, как и другие системы) для меня неплохо. Основное противоречие состоит в том, что MongoDB может работать с помощью этого метода, но навсегда не может. В отчаянии я должен рассмотреть это с точки зрения /etc/init.d.
Предпосылка - сначала сделать навсегда. Метод очень прост. Просто выполните следующую команду:
NPM установить навсегда -g
После завершения установки используйте простую программу узлов для ее проверки:
Forever Start Test.jsforever Stop Test.jsforever Restart Test.js
Пока ошибка не вызвана, это означает, что навсегда можно использовать, то есть основные условия для использования навсегда для открытия проекта узла в фоновом режиме уже выполнены, а остальное состоит в том, чтобы написать сценарий запуска.
Основное содержание сценария заключается в следующем, благодаря первоначальному автору за его тяжелую работу:
#!/bin/bash ### Intemin Info# предоставляет: xiyoulib# обязательный старт: $ all# ancome-stop: $ all# по умолчанию Start: 2 3 4 5# по умолчанию: 0 1 6# короткий разряд: начало Daemon at Boot Time# Описание: Включите службу. Node.jsdeamon =/node.js/xiyoulibnodeexpress/bin/www #here Вам нужно заполнить файл скрипта запуска в вашем собственном проекте узла log =/node.js/log/log #Optional, журнал файл PID =/node.js/pid #Recquired Content, для записи номера процесса Forever exkIns = $. Справочник по установке исполнительной программы Node здесь, Mine IS/usr/local/binexport node_path = $ node_path:/usr/local/lib/node_modules #Here -это путь библиотеки класса узлов #Приведенный ниже контент не нуждается в изменении node = nodever = forever Cash "$ 1" в начале) $ forever -l $ $ $ $ $ $ $ deam; остановка) $ forever Stop -Pidfile $ pid $ deamon ;; остановка) $ forever Stop -pidfile $ pid ;; перезагрузить) $ forever restartall -pidfile $ pid ;; Перезагрузить | Перезагрузить) $ Forever Resart -l $ log -pidfile $ pid -a $ deamon ;; Список) $ Forever List ;; *) echo "Использование: /etc.init.d/node {start | stop | restart | reload | stopall | restartall | list}" Выход 1 ;;Вот напоминание: лучше всего создать каталог в корневом каталоге для проекта узла, такого как /node.js, а затем установить разрешение на 754, что может избежать проблем, вызванных некоторыми проблемами с разрешением!
Поскольку я использую систему сервера Ubuntu, также настроена служба запуска MongoDB, а в его скрипте init.d добавляются следующие операторы:
# Обязательный старт: $ all# require-stop: $ all
Поэтому, когда я добавлю это в будущем, система будет вызвать ошибку. Таким образом, в сценарии запуска проекта Node я добавил предыдущую строку объяснений комментариев для системы сервера Ubuntu, чтобы настроить ее. Если он находится на CentOS, подобные проблемы не должны возникать. Обратите особое внимание на это!
То есть следующая информация об объяснении:
### Info# Intin Into# предоставляет: xiyoulib# обязательный Start: $ all# refect-stop: $ all# по умолчанию-старту: 2 3 4 5# по умолчанию: 0 1 6## Короткий отзыв: начало Демон при загрузке Время# Описание: Включение службы, предоставленная Daemon. ### end inform
После отредактированного сценария используйте директиву CHKConfig-List, чтобы проверить, эффективна ли добавленная вами служба, то есть все 3 и 5 должны быть включены для достижения самостоятельной работы.
Если 3 и 5 не установлены на включение, пожалуйста, выполните CHKConfig -Level 35 [Имя вашего сервиса]. Сервер Ubuntu может сообщить о некоторых предупреждениях, но до тех пор, пока 3 и 5 из необходимой службы могут быть изменены на включение, другие ошибки могут быть проигнорированы (я чувствую, что это собственный бизнес системы).
После завершения настройки проект узла можно запустить на Linux. Вы можете выключить -r Теперь попробуйте посмотреть, можно ли его запустить. После начала вы можете напрямую получить доступ к номеру порта и виртуальному каталогу, который вы устанавливаете. Если вы этого хотите, задача будет выполнена!
Но если это неправильно, внимательно проверьте некоторые сценарии и внесите соответствующие изменения на основе ошибки. В конце концов, я также попробовал!