文档章节

yapi安装(在线及离线)

o
 osc_1ee7cxmx
发布于 2018/08/06 18:16
字数 1148
阅读 0
收藏 0

精选30+云产品,助力企业轻松上云!>>>

在线安装

安装nodejs

下载压缩包,设置环境变量,这里不祥述。

安装mongodb

添加yum源

vim /etc/yum.repos.d/mongodb-3.4.repo
 
#添加下面的内容,wq保存。 

[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/RedHat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck= 0
enabled=1

#安装
yum install -y mongodb-org

配置mongod

#启动:
service mongod start
[root@CENTSVR247 vendors]# mongo
> use admin   #切换到admin数据库
switched to db admin
#创建dba用户
> db.createUser(
... ...   {
... ...     user: "dba",
... ...     pwd: "dba",
... ...     roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
... ...   }
... ... )
#创建yapi数据库
> use yapi
switched to db yapi
给yapi数据库添加test1用户,权限为读写
> db.createUser(
... ...     {
... ...       user: "test1",
... ...       pwd: "test1",
... ...       roles: [
... ...          { role: "readWrite", db: "yapi" }  
... ...       ]
... ...     }
... ... )

安装Yapi

官方说明:https://yapi.ymfe.org/devops/index.html

方式一:可视化部署

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

 

根据提示,浏览器访问 http://部署YApi服务器的IP:9090。

 

填写完信息后,点击“开始部署”。(大概等待1分钟)

# 退出当前状态

CTRL + C

 修改配置

这里我们不急着根据提示进行启动,有些参数我们可以通过修改配置达到。

 # 修改config.json

vim /root/my-yapi/config.json

 修改下面的内容(邮箱可以不用163的),wq保存。

{
  "port": "80",
  "adminAccount": "yizitadmin@yizit.cn",
  "db": {
       "servername": "127.0.0.1",
       "DATABASE": "yapi",
       "port": "27017"
   },
  "mail": {
       "enable": true,
       "host": "smtp.163.com",
       "port": 465,
       "from": "可用于发送邮件的163邮箱",
       "auth": {
           "user": "163邮箱",
           "pass": "163邮箱对应的密码或授权码"
       }
  }
}

启动

 # 切换到部署目录下

cd /root/my-yapi

# 启动服务

node vendors/server/app.js

由于修改了配置,所以直接访问 http://部署YApi服务器的IP/login。

访问http://部署YApi服务器的IP:3000/login

默认用户密码:admin@admin.com               ymfe.org

方式二:命令行部署

安装yapi

mkdir yapi
cd yapi
git clone https://github.com/YMFE/yapi.git vendors //或者下载 zip 包解压到 vendors 目录
cp vendors/config_example.json ./config.json //复制完成后请修改相关配置
cd vendors
npm install --production --registry https://registry.npm.taobao.org

安装pm2

cd vendors
npm install -S pm2

初始化及启动yapi

npm run install-server //安装程序会初始化数据库索引和管理员账号,管理员账号名可在 config.json 配置
node server/app.js //启动服务器后,请访问 127.0.0.1:{config.json配置的端口},初次运行会有个编译的过程,请耐心等候

使用pm2启动方式

#启动
npx pm2 start ./server/app.js
#停止
npx pm2 stop all

离线安装

离线安装只能采用命令行部署方式

node安装

不再详述。

内网安装mongodb

解压mongodb-linux-x86_64-3.6.4.tgz并放入mongodb文件夹中

tar -zxvf mongodb-linux-x86_64-3.6.4.tgz
mv mongodb-linux-x86_64-3.6.4 mongodb

把mongodb放入环境变量中, 修改~/.bashrc, 加入以下内容

export PATH=<mongodb文件夹的路径>/bin:$PATH

验证安装

source ~/.bashrc
mongo --version

创建dbdata/db文件夹和dblog文件夹(请自行确保这些文件夹的读写权限)

mkdir -p dbdata/db
mkdir dblog

启动mongodb服务

sudo ./mongodb/bin/mongod --fork --dbpath ./dbdata --logpath ./dblog/log

配置

参考上文mongodb配置。

离线安装yapi

在一台连接互联网的pc上安装node环境

在外网机器获取yapi源码并安装依赖

使用git获取yapi源码, 如果没有git命令请按照对应平台的安装方法安装git.

创建一个新文件夹yapi, 使用clone将yapi源码放入vendors中:

mkdir yapi
cd yapi
git clone https://github.com/YMFE/yapi.git vendors
cp vendors/config_example.json ./config.json
cd vendors
npm install --production

我这里还安装了pm2

    
npm n install -S pm2

将创建的yapi文件夹打成压缩包得到yapi.tar.gz(其目录下有config.json和vendors)

tar -czf yapi.tar.gz yapi

至此, 所有需要外部网络的操作已经完成, 可以进行内网部署.

启动yapi

解压yapi.tar.gz

tar -zxvf yapi.tar.gz

按需要修改yapi/config.json中的相关配置(例如管理员账号等)

初始化数据库:

cd ./yapi/vendors
npm run install-server

使用pm2启动

    
npx n pm2 start ./server/app.js

启动完成后即可尝试访问yapi看是否成功, 具体地址要根据内网机器的ip和在config.json中配置的端口号

如果要关闭yapi服务, 可以使用

npx n pm2 stop all

问题总结:

两种方式安装yapi,按照正常方式安装都是无法安装的,有如下错误

  • 方式1图形界面,yapi server 启动9090服务后,页面无法打开,会报错误,原因是无网络。
  • 方式2命令行安装,npm install –production 回报git错误,因需要联网git操作,原因无网络,npm使用私库代理也不行。

参考资料:

https://yapi.ymfe.org/devops/index.html

http://stlighter.github.io/2018/04/19/yapi%E7%A6%BB%E7%BA%BF%E9%83%A8%E7%BD%B2/

https://www.linuxidc.com/Linux/2018-01/150513.htm

https://blog.csdn.net/luwei42768/article/details/78919073

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。

暂无文章

vue input 获取焦点

1、首次加载 autofocus="autofocus" #autofocus 属性规定当页面加载时 input 元素应该自动获得焦点。<input type="text" class="rename_box" v-model="current_edit_text" @input="chang......

横着走的螃蟹
10分钟前
0
0
socket链接(底层)

客户端 #socket.socket表明协议并生成链接实例client #client.connect链接到服务器client #循环输入while true #输入的消息 msg = input #client.send(msg.encode())发送信息只能发送比特流进...

onedotdot
17分钟前
18
0
在线讲解一分快3和值怎么计算的

在线讲解一分快3和值怎么计算的老师:【扣 677~90~572】1.The past is gone and static. Nothing we can do will change it. Thefuture is before us and dynamic. Everything we do will af......

yiren081
17分钟前
16
0
hbase学习

简介 数据存储模型及关系型数据库的区别 一般都是牺牲一致性, 最终达到最终一致性 HBase 概念 区别 基础架构 HBASE 原理和操作 写流程 预写入会写入HLog 里面, 通过HLog 来保证数据不丢失 ...

之渊
18分钟前
15
0
网上彩票为什么会有人带你靠谱吗61861585

老师叩:61861585使用默认的随机源随机排列指定的列表。(打乱list中的数据)sort(List<T> list) 进行排序一个人,身边有多少人,就有多大的世界,有什么样的人,就有什么样的世界。这些人素养...

jiukan49
21分钟前
32
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部