首页 > 其他分享 >YAPI部署服务器(Docker)

YAPI部署服务器(Docker)

时间:2023-08-01 14:56:31浏览次数:40  
标签:mongod mongo yapi -- mongodb YAPI MongoDB 服务器 Docker

【一】YAPI介绍

  • YApi 是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。
  • 可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。

【二】部署

【1】环境

  • node.js
  • mongodb
  • yapi

【2】更新软件包管理器

  • 使用以下命令更新服务器上的软件包管理器。

  • 对于 Ubuntu/Debian:

    sudo apt update
    
  • 对于 CentOS/RHEL:

    sudo yum update
    

  • 安装完成

【3】安装 Node.js

  • 通过以下是不同操作系统上的安装步骤。

  • 在 Ubuntu/Debian 上:

    sudo apt install nodejs
    
  • 在 CentOS/RHEL 上:

    sudo yum install nodejs
    
  • 注意:通过此方法安装的 Node.js 可能并不是最新版本。
  • 如果需要特定的 Node.js 版本,可以使用 Node 版本管理工具(如 nvm 或 n)进行安装。

  • 安装完成

  • 验证 Node.js 安装:

    • 运行以下命令,确认 Node.js 是否正确安装并查看版本号。
    node -v
    
  • 安装 npm:

    • npm 是 Node.js 的包管理工具,也会随 Node.js 一起安装。
    • 再次运行验证命令来确认 npm 安装是否成功。
    npm -v
    

【4】安装MongoDB(2.6+)

  • 在 CentOS 系统上安装 MongoDB 可以通过以下步骤完成:

    • 导入 MongoDB 的 GPG 公钥,用于验证下载的软件包的完整性。执行以下命令导入 GPG 公钥:

      sudo rpm --import https://www.mongodb.org/static/pgp/server-4.4.asc
      
    • 创建一个名为 /etc/yum.repos.d/mongodb-org.repo 的 MongoDB 仓库配置文件,并使用文本编辑器打开该文件:

      sudo vi /etc/yum.repos.d/mongodb-org.repo
      
    • 将以下内容复制到 mongodb-org.repo 文件中:

      [mongodb-org-4.4]
      name=MongoDB Repository
      baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
      gpgcheck=1
      enabled=1
      gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
      

      这将配置 MongoDB 4.4 版本的仓库。

    • 保存并关闭文件。

  • 使用 yum 安装 MongoDB:

    sudo yum install -y mongodb-org
    

    这将自动安装 MongoDB 和其相关组件。

  • 安装完成后,启动 MongoDB 服务:

    sudo systemctl start mongod
    
  • 验证 MongoDB 服务是否成功启动:

    sudo systemctl status mongod
    

    如果看到 "active (running)" 的标识,表示 MongoDB 服务已成功启动。

此外,你还可以使用以下命令设置 MongoDB 服务在系统启动时自动启动:

sudo systemctl enable mongod

【5】安装YApi

官方文档参考地址:YMFE/yapi: YApi 是一个可本地部署的、打通前后端及QA的、可视化的接口管理平台 (github.com)

  • 下载 YApi:

    • 在服务器上选择一个合适的目录,比如 /opt 或者 /usr/local,用于存放 YApi。
    # cd /opt
    # ls
    containerd  rh
    # mkdir YApi
    # ls
    containerd  rh  YApi
    # cd YApi
    
    • 使用以下命令下载 YApi 的代码:
      npm install -g yapi-cli --registry https://registry.npm.taobao.org
      yapi server 
      
  • 服务器开放 9090 端口

  • 填写必要的信息,点击开始部署,进行部署

  • 部署完成

初始化管理员账号成功,账号名:"[email protected]",密码:"ymfe.org"

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

【三】docker部署Yapi

【1】Docker安装MongoDB数据库

(1)创建mongoDB容器数据卷目录

mkdir /data/mongo -p

(2)创建一个用于yapi的网络插件

docker network create yapi

(3)拉取MongoDB镜像

docker pull mongo:4.2.21

(4)启动MongoDB容器

docker run -d \
  --name mongodb \
  --restart always \
  --net=yapi \
  -p 2717:27017 \
  -v /data/mongo:/data/db \
  -e MONGO_INITDB_DATABASE=yapi \
  -e MONGO_INITDB_ROOT_USERNAME=yapipro \
  -e MONGO_INITDB_ROOT_PASSWORD=yapi2023 \
  mongo:4.2.21

(5)进入mongo容器

docker exec -it mongodb /bin/bash

(6)进入mongo客户端

mongo localhost:27017

(7)初始化数据库,依次执行下面的命令

  • 进入数据库
use admin;
  • 创建用户名和密码
db.auth("yapipro", "yapi2023");

(8)创建yapi数据库

use yapi;

(9)创建给yapi使用的账号和密码,授予可操作的权限

db.createUser({
  user: 'yapi',
  pwd: 'yapi123456',
  roles: [
 { role: "dbAdmin", db: "yapi" },
 { role: "readWrite", db: "yapi" }
  ]
});

(10)退出mongo客户端

exit

(11)退出mongo容器

exit

【2】Docker安装Yapi

(1)创建yapi的配置文件config.json

vim /data/yapi/config.json
  • 内容如下
{
   "port": "3000",
   "adminAccount": "[email protected]",
   "timeout":120000,
   "db": {
     "servername": "mongo",
     "DATABASE": "yapi",
     "port": 27017,
     "user": "yapi",
     "pass": "yapi123456",
     "authSource": ""
   },
   "mail": {
     "enable": true,
     "host": "smtp.163.com",
     "port": 465,
     "from": "*",
     "auth": {
       "user": "[email protected]",
       "pass": "yapiadminpassword"
     }
   }
 }

(2)安装Yapi

[1]拉取Yapi镜像

docker pull yapipro/yapi:1.9.5

[2]初始化数据库表

docker run -d --rm \
  --name yapi-init \
  --link mongodb:mongo \
  --net=yapi \
  -v /data/yapi/config.json:/yapi/config.json \
   yapipro/yapi:1.9.5 \
  server/install.js

[3]启动yapi容器

docker run -d \
   --name yapi \
   --link mongodb:mongo \
   --restart always \
   --net=yapi \
   -p 3000:3000 \
   -v /data/yapi/config.json:/yapi/config.json \
   yapipro/yapi:1.9.5 \
   server/app.js

【3】验证

地址:http://服务器IP:3000

  • 初始化管理员账号在上面的 config.json 配置中 adminAccount的值
    • 初始密码是 yapi.pro,可以登录后进入个人中心修改。

  • 修改个人信息

【补充】如何查看MongoDB的IP和端口

  • 前提是MongoDB服务已启动
sudo systemctl status mongod
  • 执行命令会有如下提示
[root@VM-8-11-opencloudos ~]# sudo systemctl status mongod
● mongod.service - MongoDB Database Server
   Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2023-08-01 13:29:06 CST; 14min ago
     Docs: https://docs.mongodb.org/manual
 Main PID: 1913040 (mongod)
   Memory: 108.7M
   CGroup: /system.slice/mongod.service
           └─1913040 /usr/bin/mongod -f /etc/mongod.conf

Aug 01 13:29:06 VM-8-11-opencloudos systemd[1]: Started MongoDB Database Server.
Aug 01 13:29:07 VM-8-11-opencloudos mongod[1913040]: {"t":{"$date":"2023-08-01T05:29:07.061Z"},"s":"I",  "c":"CONTR>
  • 我们可以根据 Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)

    • 这个路径找到 mongod.service 服务
  • 进入到指定目录下,执行命令

    mongo
    
  • 进入到MongoDB服务里面

    • 执行语句,提示数据库信息
    db.runCommand({whatsmyuri: 1})
    { "you" : "127.0.0.1:48578", "ok" : 1 }
    

标签:mongod,mongo,yapi,--,mongodb,YAPI,MongoDB,服务器,Docker
From: https://www.cnblogs.com/dream-ze/p/17596481.html

相关文章

  • XSAN架构迁移至STORNEXT架构导致存储数据丢失的服务器数据恢复案例
    服务器数据恢复环境:昆腾存储,操作系统:MACOS,存放的数据类型:MXF、MOV等格式视频文件。存储中有9个数据卷,其中包括1个META信息卷,8个DATA信息卷。服务器故障:由于业务需求,需要将整个存储空间从XSAN架构迁移到STORNEXT架构,迁移完成后管理员发现存储空间中的数据全部丢失。管理员查......
  • 【宝塔面板部署nodeJs项目】网易云nodeJs部署在云服务器上,保姆级教程,写网易云接口用自
    看了很多部署的,要么少步骤,要么就是写的太简洁,对新手不友好前言参考链接服务器如何上线node.js项目【项目放置在github中】宝塔部署nodejs项目参考多篇文章,主要为上2篇,才总结本篇提示:这里可以添加本文要记录的大概内容:github传送门,可一键下载它的代码到本地运行网易云n......
  • Docker部署
    docker安装1、安装docker的依赖组件    在安装docker之前,我们需要先通过yum来安装docker的必要的依赖组件。同时为了编译后面的配置信息格式化输出,我们同时需要安装jq工具yuminstall-yyum-utilsdevice-mapper-persistent-datalvm2yuminstal......
  • 国标GB28181视频平台LntonGBS(源码版)国标平台迁移服务器后无法启动的问题解决方案
    国标视频云服务LntonGBS支持设备/平台通过国标GB28181协议注册接入,并能实现视频的实时监控直播、录像、检索与回看、语音对讲、云存储、告警、平台级联等功能。平台部署简单、可拓展性强,支持将接入的视频流进行全终端、全平台分发,分发的视频流包括RTSP、RTMP、FLV、HLS、WebRTC等格......
  • docker 不适合MySQL
    近几年Docker非常的火热,各位开发者恨不得把所有的应用、软件都部署在Docker容器中,但是您确定也要把数据库也部署的容器中吗?这个问题不是子虚乌有,因为在网上能够找到很多各种操作手册和视频教程,这里整理了一些数据库不适合容器化的原因供大家参考,同时也希望大家在使用时能够谨慎一......
  • docker 数据卷
    Docker镜像是由多个文件系统(只读层)叠加而成。当我们启动一个容器的时候,Docker会加载只读镜像层并在其上(镜像栈顶部)添加一个读写层。如果运行中的容器修改了现有的一个已经存在的文件,那该文件将会从读写层下面的只读层复制到读写层,该文件的只读版本仍然存在,只是已经被读写层中该......
  • 北斗GPS卫星校时服务器如何在各领域发挥重要作用
    北斗GPS卫星校时服务器如何在各领域发挥重要作用北斗GPS卫星校时服务器如何在各领域发挥重要作用京准电子科技官微——ahjzsz1.通信与网络:时钟服务器可用于确保通信网络中的各个设备具有高度精确的时间同步。这对于数据通信、日志记录、安全认证等方面至关重要。2.金融交易:在......
  • docker-ubuntu
    第一步拉取镜像dockerpullubuntu第二步运行容器dockerrun-itd--nameu1ubuntudockerrun-itd--nameu2ubuntu第三步进入容器dockerexec-itu1bash 第四步在u1容器内运行ipaddr命令结果如下: 和在虚拟机上运行ipaddr:apt-getinstall-yiprout......
  • centos 安装docker
    服务器的系统是CentOS7.4的[root@VM_82_178_centos~]#cat/etc/RedHat-releaseCentOSLinuxrelease7.4.1708(Core)#安装依赖包yuminstall-yyum-utilsdevice-mapper-persistent-datalvm2#添加Docker软件包源yum-config-manager\--add-repo\https://download......
  • docker部署RetroArch-web 教程
    在写华芸评测的时候,在Portal模式下发现了Mednafen这个可以玩复古游戏的插件,想了下群晖应该也可以实现类似的功能,于是乎在DockerHub找了一圈,还真找到一个可用的,于是乎就有了这篇教程。一、部署阶段前置安装和创建首先在群晖上的套件中心找到docker,确认启动。打开文件管理器,进......