如何線上部署node.js項目


來源:http://blog.csdn.net/chenlinIT/article/details/73343793

前言

最近工作不是很忙,在空閑時間學習用node+express搭建自己的個人博客。目前進度大概進行到一半了,等不及想部署上線看下效果(學習階段的人總是很興奮,有一點點小成果就想馬上看看 =_=!)。 
於是買了個阿里雲服務器,自己嘗試來部署一下,搗鼓了兩天終於搗鼓好了,這里來記錄一下,以免后面又忘了。

參考:

阿里雲幫助文檔: 部署Node.js項目(CentOS) 
推酷文章 
簡書文章 
segmentfault文章 
pm2使用方法

一、買服務器

比較窮,選了最低配的。30/月,1核,1G內存,1M帶寬,操作系統:CentOS 7.2 64位。作為一個從來沒有解除過阿里雲的菜鳥,這兩天真是踩了無數坑,不過也學到了很多東西。

二、開始搗鼓,來看看怎么部署。

網上的教程很多,但還是想自己來寫一下,這樣自己好理解,也能加深記憶。首先遠程鏈接,阿里雲的遠程連接功能不會用,輸入用戶名后然后輸入登錄密碼,總是輸入不完就跳了,不知道咋回事。因為服務器系統是Linux的,我電腦是windows 7的系統。如果服務器是windows server的系統可以使用電腦的遠程桌面連接,這里就不細說了,不會的上網搜一下就行了。windows遠程連接Linux網上說有兩種常用的遠程連接工具:Putty和Xshell,我選擇的是Xshell。

1、遠程連接服務器

下載Xshell 並安裝,打開軟件你會看到會話框:

打開Xshell連接軟件

點擊新建並設置和填寫如下信息:

設置Xshell連接

填好后先不要點確定,點擊左側樹狀圖中“用戶身份驗證”,填寫信息:

設置Xshell連接

然后點擊確定后,就會像上面第一張圖顯示的,然后點擊連接,連接成功如圖顯示:

鏈接成功

2、安裝Node.js

按照阿里雲幫助文檔: 部署Node.js項目(CentOS) 教程中步驟2操作(linux系統指令大全);

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

該安裝包是編譯好的文件,解壓之后,在bin文件夾中就已存在node和npm,無需重復編譯。

wget https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-x64.tar.xz
  • 1
(2)、解壓文件。
tar xvf node-v6.9.5-linux-x64.tar.xz
  • 1
(3)、軟件默認安裝在/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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
(4)、查看node.js和npm版本:
node -v npm -v
  • 1
  • 2

完成以上步驟node.js就算安裝成功了

3、安裝mongodb

參考 簡書文章

軟件安裝位置:/usr/local/mongodb 
數據存放位置:/var/mongodb/data 
日志存放位置:/var/mongodb/logs

(1)、進入 /usr/local/:

cd /usr/local

(2)、安裝mongodb:
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.5.tgz
  • 1

其他版本鏈接可以去官網查看 
mongodb版本選擇

(3)、解壓安裝包,並重命名文件夾為mongodb
tar zxvf mongodb-linux-x86_64-3.4.5.tgz mv mongodb-linux-x86_64-3.4.5 mongodb
  • 1
  • 2
(4)、創建數據和日志存放目錄
mkdir /var/mongodb mkdir /var/mongodb/data mkdir /var/mongodb/logs
  • 1
  • 2
  • 3
(5)、設置開機啟動項

打開rc.local文件,添加CentOS開機啟動項: 
不熟悉linux命令的可以參考:linux系統指令大全

vim /etc/rc.d/rc.local
  • 1

打開文件后輸入‘i’啟用編輯。將mongodb啟動命令追加到本文件中,讓mongodb開機自啟動:

/opt/mongodb/bin/mongod --dbpath=/var/mongodb/data --logpath /var/mongodb/logs/log.log -fork
  • 1

設置開機啟動項

按 Esc 退出編輯,輸入 :wq (冒號wq),回車保存並關閉文件。

保存並關閉文件

(6)、手動啟動mongodb
/opt/mongodb/bin/mongod --dbpath=/var/mongodb/data --logpath /var/mongodb/logs/log.log -fork
  • 1

數據庫安裝和啟動已完成,下面安裝pm2

4、安裝pm2

(1)、通過npm全局安裝:
npm install pm2 -g
  • 1

這個時候使用 pm2 -v 查看版本可能會報錯,需要設置一下環境變量

(2)、設置環境變量

使用 vim 命令打開文件 /etc/profile

vim /etc/profile
  • 1

同樣,按‘i’啟動編輯,將pm2的路徑添加到環境變量中;

pm2路徑

PATH=$PATH:/opt/node/lib/node_modules/pm2/bin
  • 1

添加環境變量

保存退出之后輸入:source /etc/profile 可以讓變量生效。

5、上傳項目

上傳項目使用的是Xftp

(1)、下載

下載Xftp

(2)、連接服務器

如果已經安裝,可以點擊Xshell中‘新建文件傳輸’,直接鏈接到服務器(前提是Xshell已連接); 
手動配置連接和Xshell差不多:

配置Xftp鏈接

(3)、上傳項目目錄

參考 
我把代碼上傳到了/home目錄文件夾下。

這里寫圖片描述

6、啟動項目

(1)、使用pm2啟動項目

控制台進入存放代碼的目錄,和本地操作類似,本地使用node /bin/www 啟動項目,這里換成pm2 start /bin/www ; 
項目啟動成功后就可以使用 IP:端口 號訪問了。IP是你服務器的公網IP,端口號是你代碼中設置的監聽端口。

三、結束

至此,部署過程全部結束,我也是小白,從來沒碰過linux,實際操作中也遇到了各種問題。但是多嘗試,多搜索,細心一點一般都能部署成功。寫個博客記錄一下部署過程,好記性不如爛筆頭,以后忘記了查一下博客很快就能弄明白。也希望能夠幫助其他剛接觸linux部署的小伙伴。這個博客也不算是原創,算是整理其他博友的教程,各位可以隨意轉載。


免責聲明!

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



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