您现在的位置是:首页 > 正文

怎么在linux服务器里添加22,Linux服务器部署Yapi

2024-02-01 01:31:46阅读 1

一,环境配置

Centos7 + Node10.13.0 + MongoDB3.2.22

安装必备的依赖工具:gcc-c++  wget

yum -y install gcc-c++  wget

二,Node安装

1.下载node

wget https://nodejs.org/dist/v10.13.0/node-v10.13.0-linux-x64.tar.xz

2.解压缩node

xz -d node-v10.13.0-linux-x64.tar.xz2

tar -xf node-v10.13.0-linux-x64.tar  -C /usr/local/

3.配置node和npm

ln -s /usr/local/node-v10.13.0-linux-x64/bin/node /usr/bin/node

ln -s /usr/local/node-v10.13.0-linux-x64/bin/npm /usr/bin/npm

4.检测node是否成功

node -v

npm -v

三,Mongdb安装

1.下载mongodb 3.2.22安装包 这里我是去官网下载的

选择自己需要的版本 系统以及安装包

2.解压缩并做软链接

tar -zxvf mongodb-linux-x86_64-rhel70-3.2.22.tgz  -C /usr/local/

mv mongodb-linux-x86_64-rhel70-3.2.22 mongodb-linux-x86_64-3.2.22

ln -s /usr/local/mongodb-linux-x86_64-3.2.22 /usr/local/mongodb

3.配置系统环境变量

vim /etc/profile

export PATH=$PATH:/usr/local/mongodb/bin

4.配置mongodb数据存放目录和日志文件夹

mkdir -p /data/{db,logs}

5.配置mongodb的配置文件

cd  /usr/local/mongodb/bin

vim mongodb.conf

dbpath = /data/db #数据文件存放目录

logpath = /data/logs/mongodb.log #日志文件存放目录

port = 27017 #端口

fork = true #以守护程序的方式启用,即在后台运行

noauth = true # 不进行安全验证

#auth=true #需要认证。如果放开注释,就必须创建MongoDB的账号,使用账号与密码才可远程访问,第一次安装建议注释

bind_ip=0.0.0.0 #允许远程访问,或者直接注释,127.0.0.1是只允许本地访问

6.启动mongodb

./mongod  -f  mongodb.conf

默认端口27017

其他常用命令:

./mongod   --shuitdown

如果需要创建mongodb账号,直接运行mongo命令即可

四,Git安装配置

1.下载git

wget https://github.com/git/git/archive/v2.14.1.zip

2.安装依赖

yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel curl-devel perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker

3.解压缩并安装

unzip v2.14.1.zip

cd git-2.14.1

makeprefix=/usr/localall

makeprefix=/usr/localinstall

4.验证安装

git --version

五,Yapi安装

1.安装yapi

npm install -g yapi-cli --registry https://registry.npm.taobao.org

ln -s /usr/local/node-v10.13.0-linux-x64/bin/yapi  /usr/bin/yapi

2.启动yapi

yapi server &     # 需在后台启动 退出终端不要直接关闭 使用exit退出

打开浏览器初始化: 默认端口9090

如果要修改端口编辑下面配置

/usr/local/node-v10.13.0-linux-x64/lib/node_modules/yapi-cli/src/commands/server.js

https://127.0.0.1:9090初始化成功后会有 管理员账号和默认密码

初始化管理员账号成功,账号名:"XXXX@admin.cn",密码:"

f9e9df1aea042bfdf5838a2f68414145.pngymfe.org"

3.启动服务

进入my-yapi目录 启动服务

node vendors/server/app.js

部署成功,请切换到部署目录,输入: "node vendors/server/app.js" 指令启动服务器, 然后在浏览器打开 http://127.0.0.1:3000 访问

五,常见问题

使用xshell服务,当关闭xshell 服务也随之关闭

解决方式:部署PM2

1.安装pm2

npm install -g pm2

2.连接配置pm2

ln -s /usr/local/node-v10.13.0-linux-x64/bin/pm2 /usr/bin/pm2

3.在项目中添加配置文件processes.json

自定义:

{

"apps" : [{

"name" : "Yapi",

"script": "node ./my-yapi/vendors/server/app.js",

"cwd": "./",

"watch":[

"server",

"static",

"test",

"exts",

"common"

]

}]

}

4.在项目目录下运行即可

pm2 start processes.json

PM2常用命令

pm2 start app.js -i max  # 根据有效CPU数目启动最大进程数目

pm2 start app.js -i 3      # 启动3个进程

pm2 start app.js -x        #用fork模式启动 app.js 而不是使用 cluster

pm2 start app.js -x -- -a 23   # 用fork模式启动 app.js 并且传递参数 (-a 23)

pm2 start app.js --name serverone  # 启动一个进程并把它命名为 serverone

pm2 stop serverone       # 停止 serverone 进程

pm2 start app.json        # 启动进程, 在 app.json里设置选项

pm2 start app.js -i max -- -a 23                   #在--之后给 app.js 传递参数

pm2 start app.js -i max -e err.log -o out.log  # 启动 并 生成一个配置文件,你也可以执行用其他语言编写的app  ( fork 模式):

pm2 start my-bash-script.sh    -x --interpreter bash

pm2 start my-python-script.py -x --interpreter python

pm2 start app.js -i 4 #后台运行pm2,启动4个app.js

# 也可以把'max' 参数传递给 start

# 正确的进程数目依赖于Cpu的核心数目

pm2 start app.js --name my-api # 命名进程

pm2 list               # 显示所有进程状态

pm2 monit              # 监视所有进程

pm2 logs               #  显示所有进程日志

pm2 stop all           # 停止所有进程

pm2 restart all        # 重启所有进程

pm2 reload all         # 0秒停机重载进程 (用于 NETWORKED 进程)

pm2 stop 0             # 停止指定的进程

pm2 restart 0          # 重启指定的进程

pm2 startup            # 产生 init 脚本 保持进程活着

pm2 web                # 运行健壮的 computer API endpoint (http://localhost:9615)

pm2 delete 0           # 杀死指定的进程

pm2 delete all         # 杀死所有进程

六,mongodb数据拷贝

新部署环境如果想用老的数据,mongodb支持源数据目录直接拷贝,前提是数据库版本必须一致。

拷贝前,删除初始化数据文件,将老的数据文件拷贝到新目录中即可,拷贝前注意删除lock结尾的文件以及diagnostic.data目录,否则可能导致数据库启动失败。

完成后不需要重启初始化yapi server 直接启动node服务即可。

网站文章

  • 一文带你了解自动化测试是什么?

    一文带你了解自动化测试是什么?

    1、什么是自动化测试?自动化测试是软件测试活动中的一个重要分支和组成部分。随着软件产业的不断发展,市场对软件周期的要求越来越高,于是催生了各种开发模式,如大家熟知的敏捷开发,从而对测试提出了更高的要求...

    2024-02-01 01:31:36
  • 百度网盘这个开关建议你关闭!会偷偷吃掉1MB/s上传带宽

    百度网盘这个开关建议你关闭!会偷偷吃掉1MB/s上传带宽

    作为目前硕果仅存的网盘服务之一,百度网盘的一举一动都备受关注。最近,可以破解百度网盘下载速度限制的Pandownload终于还是倒下了,开发者也被拘捕。百度网盘最为人诟病的就是如果不掏钱...

    2024-02-01 01:31:06
  • 项目实战——创建菜单与游戏页面(下)

    项目实战——创建菜单与游戏页面(下)

    画蛇及键盘响应实现!

    2024-02-01 01:30:57
  • 关于MySQL中文乱码显示???解决办法

    关于MySQL中文乱码显示???解决办法

    描述 电脑配置:win10系统,MySQL版本5.7.19 用sqlyog设置的utf8只能在软件里面显示正常,而当我用eclipse连接数据库进行数据库内容输入输出时,中文就会显示??? 解决办法 ...

    2024-02-01 01:30:50
  • 11个 React 图片库演示示例

    11个 React 图片库演示示例

    来源 | https://us.niemvuilaptrinh.com/article/13-examples-of-react-photo-gallery-for-website在今天的...

    2024-02-01 01:30:42
  • commons-collections包中的常用的工具类

    commons-collections包中的常用的工具类

    commons-collections包中的常用的工具类 <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> &...

    2024-02-01 01:30:13
  • SpringBoot集成logstash

    SpringBoot集成logstash

    前言 原网址:https://www.jianshu.com/p/b6977babcc7e 大家应该都听说过ELK,一般ELK都是用来做分布式系统的集中日志管理,ELK的优点这里就不介绍了,好处太多,今天主要介绍下其中的Logstash。数据传给logstash,它将数据进行过滤和格式化(转成JSON格式),然后传给数据存储或者消息队列Broker,用于后续加工处理。 最近要做app埋点监控...

    2024-02-01 01:30:05
  • List-迭代器与反向迭代器

    List-迭代器与反向迭代器

    list的简单使用以及模拟实现(模板参数,反向迭代器)

    2024-02-01 01:29:59
  • initgraph函数(讲解) 热门推荐

    函数名: initgraph()   功 能: 初始化图形系统   函数原型: void far initgraph(int far *graphdriver, int far *graphmode,   char far *pathtodriver);graphdriver是上涨指向图形驱动序号变量的指针;graphmode是在graphdriver选定后,指向图形显示模式序号变

    2024-02-01 01:29:30
  • C语言案例-输出 Fibonacci 数列(斐波那契数列)的前 40 项

    【代码】C语言案例-输出 Fibonacci 数列(斐波那契数列)的前 40 项。

    2024-02-01 01:29:21