環(huán)境準(zhǔn)備
- 操作系統(tǒng):centos 7
-
環(huán)境要求:
- nodejs>7.6
- mongodb>2.6
- git
安裝nodejs
獲取資源(部署nodejs盡可能選擇偶數(shù)版本业崖,因?yàn)榕紨?shù)版本官方有較長的維護(hù)時(shí)間,故這次選擇8.x。)
curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
安裝
yum install -y nodejs
查看版本
node -v
查看npm版本
npm -v
安裝mongodb
- 更新yum源收捣,非必須但是更新一下無害
yum -y update
- 添加mongodb源文件困食,在/etc/yum.repos.d 創(chuàng)建一個(gè) mongodb-org.repo 文件
touch /etc/yum.repos.d/mongodb-org.repo
- 編輯mongodb-org.repo文件
vim /etc/yum.repos.d/mongodb-org.repo
- 添加文件內(nèi)容
[mongodb-org]
name=MongoDB
Repositorybaseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/7Server/mongodb-org/3.2/x86_64/
gpgcheck=0
enabled=1
- 安裝mongodb
yum install -y mongodb-org
- 啟動(dòng)mongodb
service mongod start
- 設(shè)置開機(jī)啟動(dòng)
chkconfig mongod on
- 打開moMongoDB(可忽略)
/bin/mongo
- 配置遠(yuǎn)程訪問
- 修改mongod.conf配置文件
vim /etc/mongod.conf
- 注釋 bindIp: 127.0.0.1
#bindIp: 127.0.0.1
- 重啟mongod
service mongod restart
安裝git
- 官方推薦,在內(nèi)網(wǎng)部署的時(shí)候安裝git,可以根據(jù)自己所需安裝
yum -y install git
搭建YApi環(huán)境
搭建YApi
- 準(zhǔn)備環(huán)境搭建完成后塘匣,開始搭建YApi,安裝命令
npm install -g yapi-cli --registry https://registry.npm.taobao.org
yapi server
- 執(zhí)行 yapi server 啟動(dòng)可視化部署程序,瀏覽器打開提示窗口上的地址巷帝,非本地服務(wù)器忌卤,將0.0.0.0替換指定的域名或IP,進(jìn)入部署頁面楞泼。
- 根據(jù)項(xiàng)目實(shí)際需要可以修改部署信息驰徊,點(diǎn)擊【開始部署】,完成部署任務(wù)
- 部署成功
4.根據(jù)部署日志截圖上的提示信息堕阔,啟動(dòng)服務(wù)
cd /my-yapi
啟動(dòng)服務(wù):node vendors/server/app.js
瀏覽器打開部署日志上的訪問地址http://127.0.0.1:3000就可以訪問搭建的YApi工具了(非本地服務(wù)器棍厂,將127.0.0.1替換指定的域名或IP),此時(shí)YApi本地環(huán)境搭建完成
如果是阿里云ecs服務(wù)器超陆,端口需要在安全組里開放牺弹,不然訪問不了
5.pm2方式管理進(jìn)程
要保證后臺(tái)保持進(jìn)程,需要安裝pm2时呀。
全局安裝:
npm install -g pm2
啟動(dòng):
cd vendors
pm2 start server/app.js --watch
重啟:
pm2 restart server/app.js
停止:
可以先通過pm2 list
獲取應(yīng)用的名字(--name指定的)或者進(jìn)程id张漂。
pm2 stop app_name|app_id
問題:
錯(cuò)誤
執(zhí)行
npm install -g pm2
報(bào)錯(cuò):
[daoshu@Demo-RiskInsight-225 vendors]$ npm install -g pm2
npm WARN checkPermissions Missing write access to /data/nodejs-12.18.3/node-v12.18.3-linux-x64/lib/node_modules/pm2
npm WARN checkPermissions Missing write access to /data/nodejs-12.18.3/node-v12.18.3-linux-x64/lib/node_modules/pm2/node_modules
npm WARN checkPermissions Missing write access to /data/nodejs-12.18.3/node-v12.18.3-linux-x64/lib/node_modules
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.3.1 (node_modules/pm2/node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! code EACCES
npm ERR! syscall access
npm ERR! path /data/nodejs-12.18.3/node-v12.18.3-linux-x64/lib/node_modules/pm2
npm ERR! errno -13
npm ERR! Error: EACCES: permission denied, access '/data/nodejs-12.18.3/node-v12.18.3-linux-x64/lib/node_modules/pm2'
npm ERR! [Error: EACCES: permission denied, access '/data/nodejs-12.18.3/node-v12.18.3-linux-x64/lib/node_modules/pm2'] {
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/data/nodejs-12.18.3/node-v12.18.3-linux-x64/lib/node_modules/pm2'
npm ERR! }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/daoshu/.npm/_logs/2021-05-10T02_24_11_554Z-debug.log
[daoshu@Demo-RiskInsight-225 vendors]$
解決:
Linux 下安裝pm2后找不到pm2命令解決方法
在安裝提示中可以看到pm2安裝位置,此時(shí)我們只要使用以下命令將pm2放入系統(tǒng)路徑下就可以了:
sudo ln -s /data/nodejs-12.18.3/node-v12.18.3-linux-x64/bin/pm2 /usr/local/bin/
參考:
pm2使用參考文檔:
http://imweb.io/topic/57c8cbb27f226f687b365636
Yapi環(huán)境搭建(史上最詳細(xì)步驟)
在centos7安裝nodejs并升級(jí)nodejs到最新版本
CentOS 6.9/7通過yum安裝指定版本的Node.js