Linux-安装-Yapi


time 20191204

author Venki

ps 内网部署


目录指引
环境要求

回到顶部

  1. 如果您是将服务器代理到 nginx 服务器,请配置 nginx 支持 websocket
# 在location /添加
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
  1. 依赖服务
  • nodejs(7.6+) (nodejs(7.6+)yapi是用nodejs开发的,所以需要此环境编译运行)
  • mongodb(2.6+)(用来存储系统的数据)
  • git
安装nodejs

回到顶部

  1. 获取资源
# 部署nodejs尽可能选择偶数版本,因为偶数版本官方有较长的维护时间,故这次选择8.x
curl -sL https://rpm.nodesource.com/setup_8.x | bash -
  1. 安装
yum install -y nodejs
  1. 查看版本
node -v
  1. 查看npm版本
npm -v
安装mongodb

回到顶部

  1. 添加mongodb源文件
touch /etc/yum.repos.d/mongodb-org.repo

vim /etc/yum.repos.d/mongodb-org.repo

# 添加如下内容
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc
  1. 安装mongodb
yum install -y mongodb-org
  1. 启动mongodb
service mongod start
  1. 设置开机启动
chkconfig mongod on
  1. 配置远程访问
vim /etc/mongod.conf

注释 bindIp: 127.0.0.1
#bindIp: 127.0.0.1
  1. 重启mongod
service mongod restart
安装YApi

回到顶部

  1. 安装方式一(不好意思没有部署成功)
npm install -g yapi-cli --registry https://registry.npm.taobao.org

yapi server
  1. 安装方式二(部署成功)
mkdir yapi

cd yapi

# 或者下载 zip 包解压到 vendors 目录
git clone https://github.com/YMFE/yapi.git vendors 
# 或者(clone 整个仓库大概 140+ M,可以通过 `git clone --depth=1 https://github.com/YMFE/yapi.git vendors` 命令减少,大概 10+ M)
# 我用的是这个小的包,大包下载太慢
git clone --depth=1 https://github.com/YMFE/yapi.git vendors

# 复制完成后请修改相关配置
cp vendors/config_example.json ./config.json

{
  # 访问端口号
  "port": "52015",
  # yapi管理员初始化登录账号 密码默认ymfe.org
  "adminAccount": "admin@admin.com",
  # mongodb 数据库配置
  "db": {
    "servername": "127.0.0.1",
    "DATABASE": "yapi",
    "port": 27017,
    "user": "venki",
    "pass": "1q2w3e4r5t@!",
    "authSource": ""
  },
  "mail": {
    "enable": true,
    "host": "smtp.163.com",
    "port": 465,
    "from": "***@163.com",
    "auth": {
      "user": "***@163.com",
      "pass": "*****"
    }
  }
}
cd vendors

npm install --production --registry https://registry.npm.taobao.org

# 安装程序会初始化数据库索引和管理员账号,管理员账号名可在 config.json 配置
npm run install-server 

# 此步骤可能报错,意识就是
SCRAM-SHA-1 authentication failed for test1 on yapi from client 127.0.0.1 ; UserNotFound: Could not find user test1@yapi

# 原因就是:针对是3.0.3以前版本已经ok,如果是3.0.3,mongodb加入了SCRAM-SHA-1校验方式,需要第三方工具配合进行验证

# 解决方法 ,下面的配置信息要根据config.json进行配置

use yapi

db.dropUser("venki")

db.createUser({user:'venki',pwd:'1q2w3e4r5t@!',roles:[{role:'dbOwner',db:'yapi'}]})
# 启动服务器后,请访问 127.0.0.1:{config.json配置的端口},初次运行会有个编译的过程,请耐心等候
node server/app.js 
  1. 重要文件位置(方式二安装)
# yapi日志文件位置
/usr/local/src/yapi/log

# mongodb日志文件位置
/var/log/mongodb
启动YApi

回到顶部

  1. 启动
yapi server
nginx代理

回到顶部

  1. 通过域名访问yapi
# nginx配置如下
server {
  server_name my.gl.yapi.com;   # 请修改为你的域名

  client_max_body_size 250m;

  location / {
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header    Host $http_host;
    proxy_set_header   X-Frame-Options   SAMEORIGIN;
    proxy_set_header   X-Real-IP         $remote_addr;
    proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;

    proxy_read_timeout 300; # Some requests take more than 30 seconds.
    proxy_connect_timeout 300; # Some requests take more than 30 seconds.
    proxy_redirect     off;
    proxy_pass http://127.0.0.1:52015/;
  }

  # Enable gzip compression as per rails guide: http://guides.rubyonrails.org/asset_pipeline.html#gzip-compression
  # WARNING: If you are using relative urls do remove the block below
  # See config/application.rb under "Relative url support" for the list of
  # other files that need to be changed for relative url support
  location ~ ^/(assets)/  {
    expires max;
    add_header Cache-Control public;
  }

  error_page 502 /502.html;
}
# 重启nginx
service nginx restart
守护进程管理服务

回到顶部

  1. supervisor编写守护进程
cd /etc/supervisor/supervisord.conf.d

vi yapi.conf

# 添加如下内容
[program:yapi]
process_name=%(program_name)s_%(process_num)02d
command=/usr/bin/node /usr/local/src/yapi/vendors server/app.js
autostart=true
autorestart=true
user=root
numprocs=1
redirect_stderr=true
stdout_logfile=/usr/local/src/yapi/log/node_server.log # 日志记录

# 重新载入
supervisorctl update

# 查看进程
supervisorctl status

> yapi:yapi_00                       RUNNING   pid 21581, uptime 0:02:55
  1. 如何查看supervisor是否起作用
  • 可以打印出stdout_logfile=/usr/local/src/yapi/log/node_server.log # 日志记录,然后边杀死程序进行检查
  • supervisorctl status只要在运行就没有问题
Mongodb

回到顶部

参考文献

回到顶部

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Linux Yapi是一个开源的接口管理平台,用于方便地管理和维护API接口文档。在某些情况下,我们可能需要将Yapi中的数据迁移到其他环境或服务器中。下面是关于如何进行Linux Yapi数据迁移的步骤和方法: 1.备份数据:首先,在源服务器中备份Yapi的数据库。可以使用mysqldump工具将数据库数据导出为.sql文件,如下所示: ``` mysqldump -u username -p yapi > yapi.sql ``` 这将创建一个名为yapi.sql的文件,包含Yapi的数据库备份。 2.迁移数据库文件:将导出的.sql文件通过scp或其他文件传输方式从源服务器拷贝到目标服务器上。 3.导入数据库:在目标服务器上,使用mysql命令导入数据库文件,如下所示: ``` mysql -u username -p yapi < yapi.sql ``` 这将导入.sql文件中的数据到目标服务器的数据库中。 4.配置Yapi:在目标服务器上安装Yapi,并修改配置文件config.json。确保数据库连接配置正确,并指向目标服务器的数据库。 5.复制附件文件:在源服务器中,Yapi的附件文件保存在/data/yapi目录下。将该目录整体复制到目标服务器对应的位置。 6.启动Yapi:在目标服务器上启动Yapi服务,并通过浏览器访问,确认数据迁移是否成功。 以上是一个简单的步骤示例,具体的操作可能会因为实际情况而有所不同。在进行数据迁移时,务必确保源服务器和目标服务器的环境、配置和版本兼容,并备份数据以防万一。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈文小超_自律

努力自己,幸福他人

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值