阿里雲CentOS7.x安裝nodejs及pm2


對之前文章的修訂

您將了解

  1. CentOS下如何安裝nodejs
  2. CentOS下如何安裝NVM
  3. CentOS下如何安裝git
  4. CentOS下如何安裝pm2

適用對象

本文檔介紹如何在阿里雲CentOS系統的雲服務器ECS實例上,安裝Nodejs並部署項目。

准備工作

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

購買ECS實例
您的實例運行的鏡像是CentOS7.x
您的實例可以連接公網
本地已經安裝用於連接 Linux 實例的工具,如 Xshell

基本流程

使用雲服務器 ECS 安裝Nodejs並部署項目的操作步驟如下:

  1. 購買 ECS 實例。
  2. 部署Node.js環境-二進制文件安裝。
  3. 部署Node.js環境-使用NVM安裝多版本。
  4. 部署測試項目。

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

操作步驟

步驟 1:創建ECS實例

選擇操作系統為公共鏡像CentOS7.x。使用root用戶登錄Linux實例。

步驟2:部署Node.js環境—二進制文件安裝

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

安裝nodejs步驟

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

選擇自己需要安裝的版本

https://nodejs.org/dist/

選擇帶linux-x64.tar.xz的安裝包,該安裝包是編譯好的文件,解壓之后,在bin文件夾中就已存在node和npm,無需重復編譯。

wget https://nodejs.org/dist/latest-v10.x/node-v10.17.0-linux-x64.tar.xz  

如果提示找不到wget命令,可以先安裝weget,執行yum -y install wget后再安裝。

  1. 解壓文件。
tar xvf node-v10.17.0-linux-x64.tar.xz 
  1. 創建軟鏈接,使node和npm命令全局有效。

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

ln -s /root/node-v10.17.0-linux-x64/bin/node /usr/local/bin/node
ln -s /root/node-v10.17.0-linux-x64/bin/npm /usr/local/bin/npm
  1. 查看node、npm版本。
node -v
npm -v
  1. 至此,Node.js環境已安裝完畢。
    軟件默認安裝在/目錄或者~目錄下,也就是根目錄或當前用戶目錄,如果不清楚當前的目錄可以執行pwd命令。如果需要將該軟件安裝到其他目錄(如:/opt/node/)下,請進行如下操作:
# 創建目錄
mkdir -p /opt/node/
# 移動到目錄中
mv /root/node-v10.17.0-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

安裝NVM管理多個node版本

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`
  1. 激活NVM。
echo ". ~/.nvm/nvm.sh" >> /etc/profile

source /etc/profile
  1. 列出Node.js的所有版本。
nvm list-remote
  1. 安裝多個Node.js版本。
nvm install v6.9.5

nvm install v7.4.0
  1. 查看已安裝Node.js版本,當前使用的版本為v6.9.5。
[root@iZuf62didsxigy36d6kjtrZ .nvm]# nvm ls
-> v6.9.5
v7.4.0
  1. 切換Node.js版本至v7.4.0。

[root@iZuf62didsxigy36d6kjtrZ .nvm]# nvm use v7.4.0
Now using node v7.4.0
  1. NVM的更多操作請參考幫助文檔:
nvm help

部署測試項目

  1. 新建項目文件example.js。
cd ~
touch example.js
  1. 使用vim編輯器打開項目文件example.js。
yum install vim
vim example.js

輸入i,進入編輯模式,將以下項目文件內容粘貼到文件中。使用Esc按鈕,退出編輯模式,輸入:wq,回車,保存文件內容並退出。

項目文件內容:

const http = require('http');
const hostname = '0.0.0.0';
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}/`);
});

注:項目文件內容中的3000為端口號,可以自行定義。並注意在阿里雲控制台安全策略中開放對於的端口

  1. 運行項目。
node ~/example.js

注:可以使用命令node ~/example.js &將項目置於后台運行。

  1. 使用命令查看項目端口是否存在。
netstat -tpln
  1. 在瀏覽器中輸入http://IP:端口號 訪問項目。

安裝pm2 守護node進程

  1. 安裝
npm install -g pm2

此時執行pm2可能會提示找不到pm2命令

  1. 通過創建軟鏈接的方法,使得在任意目錄下都可以直接使用pm2命令:
ln -s /root/node-v10.17.0-linux-x64/bin/pm2 /usr/local/bin/pm2

上面的軟鏈路徑不要疑惑,pm2確實安裝到了node解壓目錄下,想要獲得npm全局的安裝路徑可以使用命令

npm config get prefix
#使用下面的命令設置npm的全局安裝路徑
npm config set prefix 
  1. 運行
cd myapp/
pm2 start ./bin/www

完.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM