如何部署Node項(xiàng)目到線上服務(wù)器?

首先我們得現(xiàn)有一臺(tái)服務(wù)器
這里以CentOS 7.6服務(wù)器為例,以node+MongoDB講解

首先介紹一下設(shè)置鏡像源為淘寶鏡像

首先執(zhí)行以下命令回到根目錄root下

cd ~ 

1.備份

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

2.下載新的 CentOS-Base.repo 到 /etc/yum.repos.d/

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

//或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

3.運(yùn)行 yum makecache 生成緩存

安裝node以及MongoDb

在安裝之前為了保險(xiǎn)起見需要執(zhí)行以下3個(gè)步驟

1.yum clean all

yum clean all

yum 會(huì)把下載的軟件包和header存儲(chǔ)在cache中,而不自動(dòng)刪除。如果覺得占用磁盤空間,可以使用yum clean指令進(jìn)行清除,更精確 的用法是yum clean headers清除header,yum clean packages清除下載的rpm包,yum clean all一全部清除。

2.rpm --rebuilddb

rpm --rebuilddb

rpm 有自己的數(shù)據(jù)庫(kù),出現(xiàn)此錯(cuò)誤是因?yàn)閿?shù)據(jù)庫(kù)異常導(dǎo)致的,使用rpm --rebuilddb重構(gòu)一下數(shù)據(jù)庫(kù)即可,重構(gòu)只會(huì)重新建立了rpm庫(kù)表,不安裝和刪除任何的包

3.yum -y update

yum -y update

升級(jí)所有包同時(shí)也升級(jí)軟件和系統(tǒng)內(nèi)核

安裝MongoDB

1.安裝MongoDb

sudo yum install -y mongodb-org-4.2.2 mongodb-org-server-4.2.2 mongodb-org-shell-4.2.2 mongodb-org-mongos-4.2.2 mongodb-org-tools-4.2.2

2. 驗(yàn)證安裝結(jié)果

rpm -qa |grep mongodb
rpm -ql mongodb-org-server

3.啟動(dòng)MongoDB

啟動(dòng)MongoDB服務(wù)

systemctl start mongod.service

MongoDB默認(rèn)端口是27017,查看是否開啟

netstat -natp | grep 27017

檢查數(shù)據(jù)庫(kù)是否安裝成功

ps -aux | grep mongod    # 查看數(shù)據(jù)庫(kù)的進(jìn)程是否存在

4.驗(yàn)證服務(wù)開啟

mongo

5.設(shè)置開機(jī)自啟

systemctl enable mongod.service

如果需要設(shè)置密碼請(qǐng)看以下教程

遠(yuǎn)程連接Mongodb

1.修改配置文件mongodb.conf

vi /etc/mongod.conf

# network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0 

修改綁定ip默認(rèn)127.0.0.1只允許本地連接, 所以修改為bindIp:0.0.0.0, 退出保存

2.重啟mongodb服務(wù)

sudo service mongod restart 

3.開放對(duì)外端口

systemctl status firewalld  # 查看防火墻狀態(tài)
firewall-cmd --zone=public --add-port=27017/tcp --permanent # mongodb默認(rèn)端口號(hào)
firewall-cmd --reload  # 重新加載防火墻

firewall-cmd --zone=public --query-port=27017/tcp # 查看端口號(hào)是否開放成功,輸出yes開放成功,no則失敗

同時(shí)需要給服務(wù)器實(shí)例設(shè)置端口輸出規(guī)則

4.遠(yuǎn)程連接

默認(rèn)連接

mongo 10.128.218.14:27017

連接到自定義的用戶

1.創(chuàng)建用戶,設(shè)置賬號(hào),密碼,權(quán)限

// admin數(shù)據(jù)庫(kù)
> use admin
switched to db admin
> db.createUser({ user:"root", pwd:"123456", roles:["root"] })
Successfully added user: { "user" : "root", "roles" : [ "root" ] }

// 其他數(shù)據(jù)庫(kù)
> use test
switched to db test
> db.createUser({ user:"admin", pwd:"123456", roles:["readWrite", "dbAdmin"] })
Successfully added user: { "user" : "root", "roles" : [ "root" ] }

2.修改mongodb.conf文件,啟用身份驗(yàn)證

vi /etc/mongod.conf

security:
  authorization: "enabled"   # disable or enabled

3.重啟MongoDB

sudo service mongod restart 

安裝node

1.下載node

#首先進(jìn)入到/usr/local/src中

cd /usr/local/src

# 下載node
weft https://nodejs.org/dist/v12.14.1/node-v12.14.1-linux-x64.tar.xz

# 解壓
xz -d node-v12.14.1-linux-x64.tar.xz
tar xvf node-v12.14.1-linux-x64.tar.xz

# 重新命名為node
mv node-v12.14.1-linux-x64 node

2.設(shè)置node和npm的軟連接

in -s /usr/local/src/node/bin/node /usr/local/node
in -s /usr/local/src/node/bin/npm  /usr/local/npm

3.設(shè)置node的環(huán)境變量

切換到用戶根目錄

cd ~

修改用戶環(huán)境變量文件

vi .bash_profile

然后
在PATH=XXXX的后面追回冒號(hào)和/usr/local/src/node/bin (:/usr/local/src/node/bin)

4.測(cè)試是否安裝成功

node -v 

安裝PM2

1.安裝pm2

npm install -g pm2

2.配置軟連接

ln -s /usr/local/src/node/bin/pm2 /usr/local/bin/pm2

3.執(zhí)行啟動(dòng)

pm2 start <--文件路徑-->

4.開機(jī)自啟

#第一步
pm2 start
#第二步
pm2 save
#第三步
pm2 startup
#第四步,執(zhí)行第三步得到的
sudo env PATH=$PATH:/opt/bitnami/nodejs/bin /opt/bitnami/nodejs/lib/node_modules/pm2/bin/pm2 startup upstart -u bitnami --hp /home/bitnami

重啟服務(wù)器驗(yàn)證

具體的PM2方法請(qǐng)查看:列表

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容