如何快速部署Node.js專案

姬子玉發表於2017-12-05

雲棲社群 linux 分散式 javascript HTTPS ECS 雲伺服器 http js centos node aliyun git

Node.js 是一個基於 Chrome V8 引擎的 JavaScript 執行環境,用來方便地搭建快速的易於擴充套件的網路應用。Node.js 使用了一個事件驅動、非阻塞式 I/O 的模型,使其輕量又高效,非常適合執行在分散式裝置的資料密集型的實時應用。

Node.js 是一個基於 Chrome V8 引擎的 JavaScript 執行環境,用來方便地搭建快速的易於擴充套件的網路應用。Node.js 使用了一個事件驅動、非阻塞式 I/O 的模型,使其輕量又高效,非常適合執行在分散式裝置的資料密集型的實時應用。Node.js 的包管理器 npm,是全球最大的開源庫生態系統。
典型的應用場景包括:

接下來我們將要介紹如何在阿里雲ECS中部署Node.js專案。

部署流程

部署之前,請做如下準備工作:

使用雲伺服器 ECS 安裝Nodejs並部署專案的操作步驟如下:

  1. 購買 ECS 例項。
  2. 部署Node.js環境-二進位制檔案安裝。
  3. 部署Node.js環境-使用NVM安裝多版本。
  4. 部署測試專案。

注:2和3步驟,根據實際應用場景,任選其一。

操作步驟

步驟 1:建立ECS例項

選擇作業系統為公共映象CentOS7.2。使用root使用者登入Linux例項。

步驟2:部署Node.js環境--二進位制檔案安裝

該部署過程使用的安裝包是已編譯好的二進位制檔案,解壓之後,在bin資料夾中就已存在node和npm,無需手工編譯。

安裝步驟:

1、 wget命令下載Node.js安裝包。

該安裝包是編譯好的檔案,解壓之後,在bin資料夾中就已存在node和npm,無需重複編譯。

wget https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-x64.tar.xz
複製程式碼

2、 解壓檔案。

tar xvf node-v6.9.5-linux-x64.tar.xz
複製程式碼

3、建立軟連結,使node和npm命令全域性有效。

通過建立軟連結的方法,使得在任意目錄下都可以直接使用node和npm命令:

ln -s /root/node-v6.9.5-linux-x64/bin/node /usr/local/bin/node
ln -s /root/node-v6.9.5-linux-x64/bin/npm /usr/local/bin/npm
複製程式碼

4,檢視node、npm版本。

node -v
npm -v
複製程式碼

5、至此,Node.js環境已安裝完畢。

軟體預設安裝在/root/node-v6.9.5-linux-x64/目錄下。如果需要將該軟體安裝到其他目錄(如:/opt/node/)下,請進行如下操作:

mkdir -p /opt/node/
mv /root/node-v6.9.5-linux-x64/* /opt/node/
rm -f /usr/local/bin/node
rm -f /usr/local/bin/npm
ln -s /opt/node/bin/node /usr/local/bin/node
ln -s /opt/node/bin/npm /usr/local/bin/npm
複製程式碼

步驟3:部署Node.js環境-使用NVM安裝多版本

NVM(Node version manager)是Node.js的版本管理軟體,使使用者可以輕鬆在Node.js各個版本間進行切換。適用於長期做 node 開發的人員或有快速更新node版本、快速切換node版本這一需求的使用者。

安裝步驟:

1、直接使用git將原始碼克隆到本地的~/.nvm目錄下,並檢查最新版本。

yum install git
git clone https://github.com/cnpm/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`
複製程式碼

2、啟用NVM。

echo ". ~/.nvm/nvm.sh" >> /etc/profile
source /etc/profile
複製程式碼

3、列出Node.js的所有版本。

nvm list-remote
複製程式碼

4、安裝多個Node.js版本。

nvm install v6.9.5
nvm install v7.4.0
複製程式碼

5、檢視已安裝Node.js版本,當前使用的版本為v6.9.5。

[root@iZuf62didsxigy36d6kjtrZ .nvm]# nvm ls
->       v6.9.5
         v7.4.0
複製程式碼

6、切換Node.js版本至v7.4.0。

[root@iZuf62didsxigy36d6kjtrZ .nvm]# nvm use v7.4.0
Now using node v7.4.0
複製程式碼

NVM的更多操作請參考幫助文件:

nvm help
複製程式碼

步驟4:部署測試專案

1、新建專案檔案example.js。

cd ~
touch example.js
複製程式碼

2、使用vim編輯器開啟專案檔案example.js。

yum install vim
vim example.js複製程式碼

輸入“i”,進入編輯模式,將以下專案檔案內容貼上到檔案中。使用“Esc”按鈕,退出編輯模式,輸入“:wq”,回車,儲存檔案內容並退出。

專案檔案內容:

const http = require('http');
const hostname = 'ECS公網IP地址';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World\n');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
複製程式碼

注:專案檔案內容中的'ECS公網IP地址'處需填寫實際的ECS公網IP;專案檔案內容中的3000為埠號,可以自行定義。

3、執行專案。

node ~/example.js
複製程式碼

注:可以使用命令“node ~/example.js &”將專案置於後臺執行。

4、使用命令檢視專案埠是否存在。

netstat -tpln

5、在瀏覽器中輸入http://IP:埠號 訪問專案。

到這裡我們的Node.js專案就部署完成了。

駐雲科技成立於2013年,是中國少數幾家業務完全基於雲端計算技術的服務型公司。駐雲基於公共雲端計算技術,幫助廣大企業選擇真正適合其業務需要的雲端計算及大資料產品。

駐雲科技作為阿里雲的生態服務合作伙伴,將會把服務中的案例和最佳實踐沉澱在這裡,歡迎大家踴躍交流 ~

相關連結

使用者可通過雲中沙箱平臺體驗上述文件中的操作,點選此處。

更多開源軟體盡在雲市場,點選此處.

原文連結


相關文章