本文檔介紹如何在阿里雲CentOS系統的雲服務器ECS實例上,安裝Nodejs並部署項目。node
部署以前,請作以下準備工做:linux
購買ECS實例 您的實例運行的鏡像是CentOS7.x 您的實例能夠鏈接公網 本地已經安裝用於鏈接 Linux 實例的工具,如 Xshellgit
使用雲服務器 ECS 安裝Nodejs並部署項目的操做步驟以下:github
注:2和3步驟,根據您的實際應用場景,任選其一。shell
步驟 1:建立ECS實例npm
選擇操做系統爲公共鏡像CentOS7.x。使用root用戶登陸Linux實例。vim
步驟2:部署Node.js環境—二進制文件安裝瀏覽器
該部署過程使用的安裝包是已編譯好的二進制文件,解壓以後,在bin文件夾中就已存在node和npm,無需手工編譯。安全
選擇本身須要安裝的版本bash
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
後再安裝。
tar xvf node-v10.17.0-linux-x64.tar.xz
複製代碼
經過建立軟連接的方法,使得在任意目錄下均可以直接使用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
複製代碼
node -v
npm -v
複製代碼
/
目錄或者~
目錄下,也就是根目錄或當前用戶目錄,若是不清楚當前的目錄能夠執行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 version manager)是Node.js的版本管理軟件,使用戶能夠輕鬆在Node.js各個版本間進行切換。適用於長期作 node 開發的人員或有快速更新node版本、快速切換node版本這一需求的用戶。 安裝步驟:
yum install git
git clone https://github.com/cnpm/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`
複製代碼
echo ". ~/.nvm/nvm.sh" >> /etc/profile
source /etc/profile
複製代碼
nvm list-remote
複製代碼
nvm install v6.9.5
nvm install v7.4.0
複製代碼
[root@iZuf62didsxigy36d6kjtrZ .nvm]# nvm ls
-> v6.9.5
v7.4.0
複製代碼
[root@iZuf62didsxigy36d6kjtrZ .nvm]# nvm use v7.4.0
Now using node v7.4.0
複製代碼
nvm help
複製代碼
cd ~
touch 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爲端口號,能夠自行定義。並注意在阿里雲控制檯安全策略中開放對於的端口
node ~/example.js
複製代碼
注:可使用命令node ~/example.js &
將項目置於後臺運行。
netstat -tpln
複製代碼
http://IP:端口號
訪問項目。npm install -g pm2
複製代碼
此時執行pm2可能會提示找不到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
複製代碼
cd myapp/
pm2 start ./bin/www
複製代碼
完.