首页 > 其他分享 >yapi

yapi

时间:2023-01-28 17:22:13浏览次数:50  
标签:mongo yapi -- MongoDB json docker

yapi部署

部署文档来源于官网:https://hub.docker.com/r/yapipro/yapi

Docker 环境准备

Docker 容器之间网络互通需要使用 docker network create yapi 创建一个自定义网络

1、数据库准备 MongoDB

YAPI 的数据库是 MongoDB,准备镜像并启动容器如下:

# 1. 备份 mongoDB 到宿主机,需要使用下面命令创建存储卷
docker volume create mongo-data
# 2.  拉取镜像,国内服务器提供商网络问题,可能会拉取多次才能成功
docker pull mongo:latest
# 3. 启动 MongoDB
# 启动 MongoDB,其中 -e 指定 MONGO_INITDB_ROOT_USERNAME 为 MongoDB 的 ROOT 用户名,MONGO_INITDB_ROOT_PASSWORD 为 MongoDB 的 ROOT 用户密码
docker run -d \
  --name mongodb \
  --restart always \
  --net=yapi \
  -p 27017:27017 \
  -v mongo-data:/data/db \
  -e MONGO_INITDB_DATABASE=yapi \
  -e MONGO_INITDB_ROOT_USERNAME=yapipro \
  -e MONGO_INITDB_ROOT_PASSWORD=yapipro1024 \
  mongo
# 4、查看 MongoDB 容器的启动情况
docker ps -a
# 5、 进入 MongoDB 容器,从第 4 步查看 MongoDB 容器可以获取到容器 id,以下示例使用 2c46d9f59874 代表 MongoDB 的容器 id 
 docker exec -it 2c46d9f59874 /bin/sh
# 6、进入 MongoDB 容器后,进入 mongo cli
mongo localhost:27017  
# mongodb version 大于6.0时
mongosh localhost:27017


进入 MongoDB 的 mongo cli 后,执行以下语句进行初始化库表

use admin;
db.auth("yapipro", "yapipro1024");
# 创建 yapi 数据库
use yapi;
# 创建给 yapi 使用的账号和密码,限制权限
db.createUser({
  user: 'yapi',
  pwd: 'yapi123456',
  roles: [
 { role: "dbAdmin", db: "yapi" },
 { role: "readWrite", db: "yapi" }
  ]
});
# 退出 Mongo Cli
exit
# 退出容器
exit

2、启动 YAPI

在宿主机根据自己修改创建一个 YAPI 配置文件 config.json

{
   "port": "3000",
   "adminAccount": "test@gmail.com",
   "timeout":120000,
   "db": {
     "servername": "mongo",
     "DATABASE": "yapi",
     "port": 27017,
     "user": "yapi",
     "pass": "yapi123456",
     "authSource": ""
   },
   "mail": {
     "enable": true,
     "host": "smtp.gmail.com",
     "port": 465,
     "from": "*",
     "auth": {
       "user": "test@gmail.com",
       "pass": "yapi.pro"
     }
   }
 }

拉取最新镜像,启动


docker pull yapipro/yapi:latest
# 初始化数据库表
docker run -d --rm \
  --name yapi-init \
  --link mongodb:mongo \
  --net=yapi \
  -v $CONFIG_PATH/config.json:/yapi/config.json \
   yapipro/yapi \
  server/install.js
# CONFIG_PATH 为创建的config.json 配置文件的路径
# 初始化管理员账号在上面的 config.json 配置中 test@gmail.com,初始密码是 yapi.pro,可以登录后进入个人中心修改
docker run -d \
   --name yapi \
   --link mongodb:mongo \
   --restart always \
   --net=yapi \
   -p 3000:3000 \
   -v $PWD/config.json:/yapi/config.json \
   yapipro/yapi \
   server/app.js
# 在服务器上验证 yapi 启动是否成功
curl localhost:3000

通过http://ip:3000/进行访问使用,账号:test@gmail.com",初始密码是 yapi.pro


标签:mongo,yapi,--,MongoDB,json,docker
From: https://www.cnblogs.com/neuq21235/p/17070912.html

相关文章

  • 问题:RuntimeError: Model class LuffyAPI.apps.user.models.UserInfo doesn't declare
    问题截图  报错原因提示app未注册,但实际上已经注册的#1.#settings配置文件移动后要将这个settings添加到环境变量中sys.path.insert(0,BASE_DIR)#将所有app......
  • 前后端分离 & YApi接口管理 & Swagger【reggie_take_out】
    前后端分离YApi接口管理Swagger......
  • 记一次yapi部署过程
    一、为什么用yapiyapi基于文档注释生成,没有代码的入侵。同一个工程的接口文档可以导出多个项目中,分权限查看。可以本地化部署,统一的接口文档,支持其他的文档接入。有id......
  • 前后端分离开发工具YAPI部署记录
    之前公司说要建立起前后端分离开发模式,而我只是刚毕业,让我负责建立起这个规范,虽然刚毕业还没去大厂待过,对我来说是个挑战,只能按我理解和网上的方案进行建立。在​​Go​​......
  • 前后端分离开发工具YAPI部署记录
    之前公司说要建立起前后端分离开发模式,而我只是刚毕业,让我负责建立起这个规范,虽然刚毕业还没去大厂待过,对我来说是个挑战,只能按我理解和网上的方案进行建立。在​​Go​​......
  • 【2022-11-28】Docker部署搭建Yapi
    一、环境准备1.准备一台虚拟机\或者购买服务器2.虚拟机硬件要求2.1内存2-4G2.2CPU2核2G2.3硬盘至少20G3.系统镜像 centos7.9二、安装docker#......
  • yapi内网部署
    目的yapi在内网部署01、先从外网构建安装下载好依赖及可以启动起来02、然后把服务打包到内网在初始化数据库03、在启动envcentos7.x2c4gyapi-v1.9.3mongodb-v3.6......
  • Yapi接口管理平台的配置和安装
     一、Yapi安装环境系统:Windows10安装环境:node环境+mongodb数据库(yapi系统需要部署在node环境中,且使用mongodb进行数据库存储。)安装包版本:Node:v10.5.0MongoDB:v5.0.1......
  • 从rap2数据导入yapi中
    复制教程: https://www.jianshu.com/p/4bd2ec5cb5e7主要 Rap2导出swagger2格式json:原理采用曲线救国的方式,rap2=》 swagger.json=>导入yapi。输入rap2某个项目......
  • docker搭建yapi接口文档系统、Idea中上传接口、在线调用
    一、前言在我们后端开发中,必不可少的是接口的交接,有很多种方式,常见的就是swagger,不过这个侵入性太强了。还有就是接口文档的框架,比如今天小编带大家一起搭建的yapi,在公司......