一、环境准备及安装

本文中是以本地 Windows 作为安装环境,Nginx 做反向代理,亲测验证可用。

Yapi 运行需要的环境:

Nodejs,MongoDB

安装包都在文档末尾处

1.1 安装 node-v12.16.1

为啥偏偏是 V12.16.1 版本?因为亲测 Nodejs 安装太高的版本会导致 Yapi 可视化安装时出现奇怪的错误,经过几次测试,便使用了该版本的 nodejs 及 V4.2.12 版本的 MongoDB。

安装过程很简单,一直 next 使用默认配置

验证是否安装成功,cmd 使用【node -v】命令即可

1.2 安装 MongoDB

Yapi 的数据存储使用的 MongoDB,例如一些账户信息,之后也方便二开

1.2.1 安装包

双击.msi 文件,选择 Custom 自定义安装。

温馨提示:准备好一个文本文档记录下安装的目录,稍后将会用到,这里我将路径修改在了 D:\MongoDb

"install mongoDB compass"不勾选(当然你也可以选择安装它,大概需要 5-8 分钟安装时间),MongoDB Compass 是一个图形界面管理工具,我们可以在后面自己到官网下载安装.

下载地址:https://www.mongodb.com/download-center/compass。

在安装好之后,D:\MongoDb目录如下图所示

1.2.2 验证安装

进入 bin 目录双击 mongo.exe 即可

连接 Mogodb 之后可以使用简单的算术运算,输入 db 即可查看当前操作的文档,即数据库

二、Yapi 可视化安装

2.1 安装 Yapi

进入此步骤就已经成功大半了,因为 Yapi 官方提供了两种方式部署,其中可视化安装,使得它的安装非常简单人性化

先上官网地址:Yapi 官方手册

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

在 cmd 命令行中分别输入以上命令行,则 yapi 可视化部署就已经在当前宿主机上了,在本地部署则输入 127.0.0.1:9090,进入可视化部署界面,就像一个软件安装页面一样.



此时在可视化部署之前,可以进行 Yapi 的预设配置,经过测试用该文档的 nodejs 和 MongoDB 版本安装 1.9.2 版本是没有问题的,编写此文档时,Yapi 刚更新了 1.10.1 版本,暂时未测试。

此外还需要注意 Yapi 部署的路径、网站端口号及数据库端口号。

2.2 可视化部署



Yapi 部署过程中,会初始化数据库及 UI,一般安装过程在 5 分钟之内,如若报错也会在该控制台输出,一般手动百度一下就能解决。



此时提示部署成功则安装成功,记录初始化管理员账号密码,切换到部署目录,输入 nodejs 命令去启动服务器。

这里的部署目录就是 2.1 步骤中我们部署的路径,浏览器的端口则为我们设置的网站端口

2.3 运行 Yapi.

在窗口启动 yapi 之后,进入http://127.0.0.1:3000,登录输入在可视化部署页面初始化的管理员账号密码,进入首页,至此Yapi的安装就此完成

三、Yapi 使用 Nginx 部署

3.1 Nginx 环境准备及安装

安装 Nginx

官网下载地址http://nginx.org/en/download.html 下载解压之后的目录如下



两种启动方式:

  1. 双击 nginx.exe,双击之后会一个黑框一闪而过,不建议使用,错误看不到日志。
  2. Cmd 命令窗口下使用 nginx.exe 或者 start nginx 命令启动

3.2 Nginx 常用命令

nginx -s reload            # 重新载入配置文件
start nginx # 启动Nginx
nginx -s reopen # 重启 Nginx
nginx -s stop # 快速停止 Nginx
nginx -s quit # 完整有序的停止nginx

3.3Nginx 配置

网上的关于 Nginx 配置的文档很多,这里不重复讲解解释,推荐几个网址:

Nginx 的安装及使用



至此 Yapi 的部署就到此结束了,后续再启动 Yapi 只需要执行 2.2 节运行 Yapi 以及 3.1 节中启动 Nginx 即可。

80 端口占用错误处理方法

错误:nginx: [emerg] bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions)

解决方案

查看 80 端口占用情况

netstat -aon | findstr :80

查看服务名称

tasklist|findstr "4"

本文使用的是方式三解决的。

从零开始部署 Yapi(Windows+Nginx)的更多相关文章

  1. Linux服务部署Yapi项目(安装Node Mongdb Git Nginx等)

    Linux服务部署Yapi 一,介绍与需求 1,我的安装环境:CentOS7+Node10.13.0+MongoDB4.0.10. 2,首先安装wget,用于下载node等其他工具 yum insta ...

  2. Docker构建YApi镜像, Docker安装YApi, Docker部署YApi

    概述 YApi 是高效.易用.功能强大的 api 管理平台,旨在为开发.产品.测试人员提供更优雅的接口管理服务.可以帮助开发者轻松创建.发布.维护 API,YApi 还为用户提供了优秀的交互体验,开发 ...

  3. 从零开始部署一个 Laravel 站点

    从零开始部署一个 Laravel 站点 此文章为原创文章,未经同意,禁止转载. PHP Laravel Web Git 在阿里云买ECS的时候选择自己习惯的镜像系统,我一般都是使用Linux Ubun ...

  4. windows+nginx+iis+redis+Task.MainForm构建分布式架构 之 (nginx+iis构建服务集群)

    本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,由标题就能看出此内容不是一篇分享文章能说完的,所以我打算分几篇分享文章来讲解,一步一步实现分 ...

  5. 从零开始学 Java - Windows 下安装 Tomcat

    谁都想分一杯羹 没有一个人是真正的无私到伟大的,我们试着说着做自己,与人为善,世界和平!殊不知,他们的真实目的当你知道后,你会被恶心到直摇头并下意识地迅速跑开,下辈子都不想见到他.不过,他没错,你也没 ...

  6. 从零开始学 Java - Windows 下安装 JDK

    关于未来 "我要死在火星.在我死去的时候能够想着人类能有一个美好的未来--有可持续的能源,同时能够殖民其他的星球来避免人类灭绝的最坏可能." 官网下载 直接打开官网:http:// ...

  7. 使用CSDN Code将网站部署到Windows Azure Website上

    在云计算时代,开发和部署应该是完全统一和集成的.在海外,开发者可以用github来管理他们的代码,并且直接部署到Windows Azure上.随着Windows Azure在国内的发布,我们发现,其实 ...

  8. (一)JAVA项目(非web项目)部署到windows服务器运行

    [转]http://blog.csdn.net/tracy19880727/article/details/11205063 一般服务器运行的几乎都是web项目,今天遇到一个问题,把写好的Java项目 ...

  9. 网站部署到Windows Azure Website上

    使用CSDN Code将网站部署到Windows Azure Website上 在云计算时代,开发和部署应该是完全统一和集成的.在海外,开发者可以用github来管理他们的代码,并且直接部署到Wind ...

随机推荐

  1. C# prism 框架

    定义Region (RegionManager) 定义Region 的方式有两种,一个是在XMAL界面指定,另一种这是代码当中指定. RegionManager.RegionName(XMAL) Re ...

  2. C# 获取计算机的硬件、操作系统信息

    C# 获取计算机的硬件.操作系统信息   获得信息的命名空间是:System.Management 创建ManagementObjectSearcher对象获取相关信息 eg: using Syste ...

  3. C++ CLI简介(什么是C++ CLI)

    要知道C++/CLI是什么,首先知道什么是CLI. 一.CLI简介 CLI:(Common Language Infrastructure,通用语言框架)提供了一套可执行代码和它所运行需要的虚拟执行环 ...

  4. JS对象创建的几种方法

    最近一直在看JS高级程序设计这本书,有空来梳理一下几种创建对象的方式.话不多说,直接步入正题. 第一种:Object构造函数创建 var Person = new Object(); Person.n ...

  5. Java的GUI组件的布局管理器

    1 import java.awt.BorderLayout; 2 import java.awt.FlowLayout; 3 import java.awt.Font; 4 import java. ...

  6. 在多数据源中对部分数据表使用shardingsphere进行分库分表

    背景 近期在项目中需要使用多数据源,其中有一些表的数据量比较大,需要对其进行分库分表:而其他数据表数据量比较正常,单表就可以. 项目中可能使用其他组的数据源数据,因此需要多数据源支持. 经过调研多数据 ...

  7. 你的域名是如何变成 IP 地址的?

    我的 个人网站 上线了,上面可以更好的检索历史文章,并且可以对文章进行留言,欢迎大家访问 可能大家都知道或者被问过一个问题,那就是很经典的「从浏览器输入 URL 再到页面展示,都发生了什么」.这个问题 ...

  8. MySQL日志系统bin log、redo log和undo log

    MySQL日志系统bin log.redo log和undo log   今人不见古时月,今月曾经照古人. 简介:日志是MySQL数据库的重要组成部分,记录着数据库运行期间各种状态信息,主要包括错误日 ...

  9. 安装redis 6.0.6

    1.规划目录:下载目录.安装目录.redis数据目录mkdir -p /data/appmkdir -p /opt/redis_cluster/redis_6379/{conf,logs,pid}mk ...

  10. Redis++:Redis 内存爆满 之 淘汰策略

    前言: 我们的redis使用的是内存空间来存储数据的,但是内存空间毕竟有限,随着我们存储数据的不断增长,当超过了我们的内存大小时,即在redis中设置的缓存大小(maxmeory 4GB),redis ...