如何部署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ù)庫糟袁,出現(xiàn)此錯(cuò)誤是因?yàn)閿?shù)據(jù)庫異常導(dǎo)致的,使用rpm --rebuilddb重構(gòu)一下數(shù)據(jù)庫即可躺盛,重構(gòu)只會(huì)重新建立了rpm庫表项戴,不安裝和刪除任何的包

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ù)庫是否安裝成功

ps -aux | grep mongod    # 查看數(shù)據(jù)庫的進(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ù)庫
> use admin
switched to db admin
> db.createUser({ user:"root", pwd:"123456", roles:["root"] })
Successfully added user: { "user" : "root", "roles" : [ "root" ] }

// 其他數(shù)據(jù)庫
> 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)系作者
  • 序言:七十年代末君躺,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子开缎,更是在濱河造成了極大的恐慌棕叫,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,755評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件奕删,死亡現(xiàn)場(chǎng)離奇詭異俺泣,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)完残,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門伏钠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人坏怪,你說我怎么就攤上這事贝润。” “怎么了铝宵?”我有些...
    開封第一講書人閱讀 165,138評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵打掘,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我鹏秋,道長(zhǎng)尊蚁,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,791評(píng)論 1 295
  • 正文 為了忘掉前任侣夷,我火速辦了婚禮横朋,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘百拓。我一直安慰自己琴锭,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評(píng)論 6 392
  • 文/花漫 我一把揭開白布衙传。 她就那樣靜靜地躺著决帖,像睡著了一般。 火紅的嫁衣襯著肌膚如雪蓖捶。 梳的紋絲不亂的頭發(fā)上地回,一...
    開封第一講書人閱讀 51,631評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音俊鱼,去河邊找鬼刻像。 笑死,一個(gè)胖子當(dāng)著我的面吹牛并闲,可吹牛的內(nèi)容都是我干的细睡。 我是一名探鬼主播,決...
    沈念sama閱讀 40,362評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼帝火,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼纹冤!你這毒婦竟也來了洒宝?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,264評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤萌京,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后宏浩,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體知残,經(jīng)...
    沈念sama閱讀 45,724評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年比庄,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了求妹。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,040評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡佳窑,死狀恐怖制恍,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情神凑,我是刑警寧澤净神,帶...
    沈念sama閱讀 35,742評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站溉委,受9級(jí)特大地震影響鹃唯,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜瓣喊,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評(píng)論 3 330
  • 文/蒙蒙 一坡慌、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧藻三,春花似錦洪橘、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至岖寞,卻和暖如春抡四,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背仗谆。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工指巡, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人隶垮。 一個(gè)月前我還...
    沈念sama閱讀 48,247評(píng)論 3 371
  • 正文 我出身青樓藻雪,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親狸吞。 傳聞我的和親對(duì)象是個(gè)殘疾皇子勉耀,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容