1. 程式人生 > >Centos裡開機自啟動 node.js 程式

Centos裡開機自啟動 node.js 程式

要把一個node.js程式移植到一臺centos伺服器,要求開機自啟動

使用forever啟動一個node.js程式很簡單,一行程式碼就行:forever start server.js。是不是很簡單呢?

        假設工程是位於 /home/aerchi/app-tool 下面,server.js中有一句如下程式碼:

在centos下開機啟動node.js程式吧。有兩種方式,第一種很簡單,只需要在/etc/rc.local檔案末尾新增如下語句

forever --sourceDir /home/aerchi/app-tool start server.js 請忽略下面的工程路徑,僅供參考:

        不過有一個地方需要注意,就是要確保/etc/rc.d/rc.local具有可執行許可權,沒有的話記得要執行如下語句修改許可權:

          chmod a+x /etc/rc.d/rc.local

            第二種方法要麻煩點,就是在/etc/init.d目錄下新增一個服務,首先我們命令列中輸入vi forever(你也可以叫其他名字),然後輸入如下程式碼:

        #!/bin/bash         # chkconfig: 345 88 08         # description: Forever for node.js

        PROJECT_DIR=/home/aerchi/app-tool         ENTRY_FILE=server.js         LOG=/home/aerchi/forever.log         PID=/root/.forever/pids/forever.pid

        export PATH=$PATH:/usr/local/bin

        node=node         forever=forever

        case "$1" in             start)                 $forever --sourceDir $PROJECT_DIR start -l $LOG --pidFile $PID -a $ENTRY_FILE                 ;;             stop)                 $forever --sourceDir $PROJECT_DIR stop --pidFile $PID $ENTRY_FILE                 ;;             stopall)                 $forever stopall --pidFile $PID                 ;;             restartall)                 $forever restartall --pidFile $PID                 ;;             reload|restart)                 $forever --sourceDir $PROJECT_DIR restart -l $LOG --pidFile $PID -a $ENTRY_FILE                 ;;             list)                 $forever list                 ;;             *)                 echo "Usage: /etc/init.d/forever {start|stop|restart|reload|stopall|restartall|list}"                 exit 1                 ;;         esac

        記得要把這裡的PROJECT_DIR、ENTRY_FILE、LOG都改成自己需要的,這裡有個地方需要注意,就是一定要新增

        chkconfig 354 88 08

這一句,否則後面使用chkconfig命令時會出現問題。好了,儲存好之後,我們改修改一些許可權及命令讓它成為可執行,依次輸入如下語句即可:

     chmod 755 forever      chkconfig --add forever      chkconfig forever on

       這樣就完成了所有的操作,可以自己用/etc/init.d/forever start試試。