ubuntu部署使用pm2部署nodejs專案 + pm2和nginx開機自啟動

obliviousSing發表於2019-02-16

nodejs安裝

  1. apt update –更新軟體源
  2. apt install nodejs –安裝nodejs,但是這個版本是4.2.6(只能使用nodejs -v 檢視,node 無效)
  3. apt install npm –安裝npm
  4. npm install n -g –安裝n模組,用這個模組升級nodejs(一定要加-g)
  5. n stable –升級nodejs到最新版(此時可以用node -v 檢視版本)

openResty安裝

  1. apt install libpcre3-dev libssl-dev perl make build-essential curl –安裝開發庫
  2. wget https://openresty.org/download/openresty-1.13.6.1.tar.gz –下載openresty安裝包
  3. tar -xzvf openresty-1.13.6.1.tar.gz –解壓安裝包
  4. cd openresty-1.13.6.1 –進入檔案
  5. ./configure --prefix=/usr/server/openrest –將openresty安裝到/usr/server/openresty目錄下(目錄自己隨便建立)
  6. make, make install –編譯和安裝
  7. usr/server/openresty/nginx/sbin/nginx –啟用nginx

pm2啟動專案和開機自啟動

1.npm install pm2 -g –命令列全域性安裝pm2

2.我使用的express建立專案

cd usr/server/spider-news/bin --首先找到專案地址
pm2 start www
pm2 save
pm2 startup

nginx新增到系統服務和開機自啟動

1.進入/etc/init.d目錄下建立nginx指令碼(路徑改為自己的nginx所在地址)

PROGRAM=/usr/server/openresty/nginx/sbin/nginx

test -x $PROGRAM || exit 0
case "$1" in
  start)
     log_begin_msg "Starting Nginx server"
     /usr/server/openresty/nginx/sbin/nginx
     log_end_msg 0
     ;;
  stop)
     PID=`cat /usr/server/openresty/nginx/logs/nginx.pid`
     log_begin_msg "Stopping Nginx server"
     if [ ! -z "$PID" ]; then
        kill -15 $PID
     fi
     log_end_msg 0
     ;;
  restart)
     $0 stop
     $0 start
     ;;
  *)
     log_success_msg "Usage: service nginx {start|stop|restart}"
     exit 1
esac
exit 0

2.然後執行下面的命令:

sudo chmod +x nginx
sudo update-rc.d nginx defaults

然後開機nginx就會自動啟動,同時也可以使用下面的命令了.

sudo service nginx start
sudo service nginx stop

相關文章