使用Digital Ocean超快速搭建出部屬NodeJs的主機

 




上一篇我簡單分享了透過數位海洋的雲端資料庫主機搭建方式
可以看到十分迅速一個DB Server就自然產生了

這次要來部屬NodeJs的應用
就需要先產生可以部屬NodeJS的主機環境

側欄Marketplace點入後


搜尋NodeJs後



預設此主機已經把部屬環境該裝的都裝好了
跟泡麵一樣都包裝好了
應有盡有只要按鈕點一下就自然產生

包含NGINX、NPM  、 NodeJs 跟 PM2 (PM2.5)
















基本上會發現創建方式
跟上一篇差不多一致性的操作流程



創建好的node droplet我們只要複製該IP



就會看到預設導入的網頁



接著你網站目錄可以透過git或FileZela 之類的FTP軟體來連線放置




預設放置於/var/www的目錄下



這裡預設環境都有安裝好npm跟nodejs了
官方html輸出位置預設就是在/var/www中的hello.js
那通常也要記得你的NodeJs專案中有用到捨麼package要記得補下載



pm2 list
(pm2主要是一套常用於管理主機上nodejs 應用process的工具,PM:Process Manager)
由於我們是直接透過digitalocean幫我們一鍵到位
不然若是一個全新的linux主機通常還要自己手動下載安裝
npm install --global pm2

1.提供node應用若crash掉後自動重啟的監控服務。
2.提供可以在server重啟後(或在指定的條件下),應用自動重啟服務。
3.提供多項資訊的表格視覺化查看,包含已重啟次數、CPU 跟 memory用量、process id...等等。


pm2 list  
可以條列出目前的網站服務process 列表,看到目前該支應用process的運行狀態跟負載資訊。


由於預設跑hello這支js來呈現可愛鯊魚畫面
我們想把它偷天換日

所以我們暫時把它中斷
pm2 stop 0

並刪除該Process
 pm2 delete 0

(在過程中可不斷透過pm2 list  來看下了指令後狀態的變化)

這裡都是賦予參數值為 process id 也就是0

由於我這支預設port設定跑 8080
因此需要再去更改

預設自帶範例port設定為3000


由於我在本機windows不能用那個port會衝到
因此若想要改該主機的預設port



就需要去到
/etc/nginx/sites-enabled/
目錄下對default(nginx主機的config檔案)這個檔案做port編輯設定



編輯好改port為你目標port 後儲存完

檢查狀態是否有successful字眼
nginx -t


再將nginx重啟
 service nginx restart


移到網站目錄後
執行

重啟網站進入點js的process
pm2 restart hello.js

檢查狀態
pm2 list

保存配置
pm2 save


基本上你再重新刷新訪問就會是你要部屬的網頁了





Ref:
ubuntu – 如何通過其他端口(而不是80)啟動Nginx
https://ubuntuqa.com/zh-tw/article/10418.html

更改nginx默认端口,ubuntu更改nginx端口号
https://blog.csdn.net/w20101310/article/details/78835668

使用 pm2 管理 Node.js 服務
https://noob.tw/pm2/

pm2 - 用法大全
https://tn710617.github.io/zh-tw/pm2/

【教學】好用的process manager, PM2
https://wayne265265.pixnet.net/blog/post/117947411-%E5%A5%BD%E7%94%A8%E7%9A%84process-manager%2C-pm2








留言

這個網誌中的熱門文章

何謂淨重(Net Weight)、皮重(Tare Weight)與毛重(Gross Weight)

Architecture(架構) 和 Framework(框架) 有何不同?_軟體設計前的事前規劃的藍圖概念

經得起原始碼資安弱點掃描的程式設計習慣培養(五)_Missing HSTS Header