【研发工具】Yapi接口管理平台内网Centos8下搭建

news/2024/4/28 12:14:45/文章来源:https://blog.csdn.net/dongshengliao/article/details/130756798

1 环境依赖安装

环境要求
nodejs(7.6+) (本文安装12.18.3)
mongodb(2.6+)(本文安装5.0.17)

1.1 安装Nodejs

1.1.1 下载安装包

    下载地址:https://nodejs.org/zh-cn/download/

这里下载linux版本:node-v12.18.3-linux-x64.tar.gz
(注意,这里node的版本不能太高,比如尝试安装18.16.0,发现最后yapi启动报错,网上也有安装14.x的版本也有类似的问题)

1.1.2 上传到服务器并解压安装包

将 node-v12.18.3-linux-x64.tar.gz 上传部署服务器的某目录(这里使用/opt)后,进行解压:
tar -xzvf node-v12.18.3-linux-x64.tar.gz

1.1.3 验证

切换到 安装bin目录下cd 你安装的node目录/bin查看node版本./node -v查看npm版本./npm -v

在查看npm版本时,可能会提示以下错误:
/usr/bin/env: ‘node’: No such file or directory

原因:
npm执行的时候默认是使用/usr/bin/node去执行,本地应该是没有/usr/bin/node,可以创建一个软连接将自己的node的执行文件指到/usr/bin/node上:
ln -s 你的node部署目录/bin/node /usr/bin/node

也可以将node的安装目录下的bin添加到系统 环境变量path中,在/etc/profile配置文件中可以添加以下两句(需根据实际部署的路径 进行调整)

    export NODE_HOME=/opt/node-v12.18.3-linux-x64export PATH=$PATH:${NODE_HOME}/bin

1.2 安装Mongodb

1.2.1 下载安装包

下载地址:
www.mongodb.com

选择 Products > Community Edition 进入社区版,下载 Linux 版对应的安装包
在这里插入图片描述
这里注意,6.0之后的版本改动有点大,yapi并未友好支持,需选择5.0或之前的版本。(主要是6.0之后,mongodb部署包不包含mongo客户端)

在这里插入图片描述
这里下载了以上linux的版本安装包:
mongodb-linux-x86_64-rhel80-5.0.17.tgz

1.2.2 安装

上传安装包至服务器并解压(这里上传至/opt目录下)

tar xzvf mongodb-linux-x86_64-rhel80-5.0.17.tgz

修改解压后的文件夹名

mv mongodb-linux-x86_64-rhel80-5.0.17 mongodb-5.0.17

进入mongodb-5.0.17目录,创建与 bin 目录同级的 data\db 、log 和 conf 目录用于存放数据和日志

# 创建 data\db 文件夹存放数据
mkdir -p data/db# 创建 log 文件夹存放日志
mkdir log# 创建 conf 文件夹存放配置文件
mkdir conf

在 log 目录下创建 mongodb.log 存放日志,

# 进入 log 目录 
cd log 
# 创建 mongodb.log 文件 
touch mongodb.log

在 conf 目录下创建 mongodb.conf 文件并添加以下配置信息:

systemLog:# MongoDB发送所有日志输出的目标指定为文件# The path of the log file to which mongod or mongos should send all diagnostic logging informationdestination: file# mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径path: "/opt/mongodb-5.0.17/log/mongod.log"# 当mongos或mongod实例重新启动时,mongos或mongod会将新条目附加到现有日志文件的末尾。logAppend: true
storage:# mongod实例存储其数据的目录。storage.dbPath设置仅适用于mongod。# The directory where the mongod instance stores its data.Default Value is "/data/db".dbPath: "/opt/mongodb-5.0.17/data/db"journal:#启用或禁用持久性日志以确保数据文件保持有效和可恢复。enabled: true
processManagement:#启用在后台运行mongos或mongod进程的守护进程模式。fork: true
net:# 服务实例绑定的IP,默认是localhost(192.168.222.129:局域网IP)bindIp: localhost,192.168.222.129# bindIp#绑定的端口,默认是27017port: 27017

1.2.3 启动

进入到 bin 目录下 启动 MongoDB

以配置文件的形式启动

mongod -f ../conf/mongodb.conf

1.2.4 停止并关闭mongod服务

将mongodb的安装目录配置到/etc/profile中,以便可以随处执行mongo命令

export MONGO_HOME=/opt/mongodb-5.0.17
export PATH=$PATH:${MONGO_HOME}/bin

修改完配置后,执行source /etc/profile ,以便配置可以生效。

方式1:正常关闭:
# 客户端登录服务,注意,这里通过localhost登录,如果需要远程登录,必须先登录认证才行。
mongo --port 27017# 关闭服务
db.shutdownServer()方式二:快速关闭:
#通过进程编号关闭节点
kill -2 pid

1.2.5 客户端连接

在部署机器上,输入 mongo 命令便可以连接上

2 安装Yapi

http://ued.qunar.com/yapi/devops/index.html

官方提供了两种部署方式,一种是可视化部署,另一种则是命令行git clone源码来部署,这里采用可视化部署。

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

说明:执行 yapi server 启动可视化部署程序,输入相应的配置和点击开始部署,就能完成整个网站的部署。部署完成之后,可按照提示信息,执行 node {网站路径/server/app.js} 启动服务器。在浏览器打开指定url, 点击登录输入您刚才设置的管理员邮箱,默认密码(ymfe.org) 登录系统(默认密码可在个人中心修改)。

安装成功后会收到下面提示:


初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org" 
部署成功,请切换到部署目录,输入: "node vendors/server/app.js" 指令启动服务器, 
然后在浏览器打开 http://127.0.0.1:3000 访问

通过浏览器打开:http://ip:9090进入安装界面

后台永久运行

上面直接node启动,是在控制台上运行,关闭控制台服务将自动退出,如想要服务在后台运行,可以安装forever实现后台运行

# 安装forever
npm install forever -g  # 在yapi安装目录下/opt/my-yapi/vendors/server目录下启动应用
forever start app.js# 关闭应用
forever stop app.js  
# 重启所有应用
forever restartall 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_303094.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pnpm命令介绍

一、安装pnpm npm install -g pnpm 二、设置镜像源 pnpm config set registry https://registry.npm.taobao.org/ # 检查 pnpm config get registry 三、常用命令 # 查看ts-node的所有版本 pnpm view ts-node versions # 等价与npm i nodemon -g pnpm add nodemon -g # npm i p…

OMG Data Distribution Service(DDS)规范解读-Part4

目录 2.4 Listeners, Conditions, and Wait-sets2.4.1 Communication Status2.4.2 Changes in Status2.4.2.1 Plain communication statuses2.4.2.2 Read Communication Statuses 2.2.4.3 Access through Listeners2.2.4.3.1 Listener Access to Plain Communication Status2.2…

chatgpt赋能Python-python3_8怎么安装matplotlib

Python3.8怎么安装Matplotlib Matplotlib是一个非常流行的Python可视化库,它可以用来创建各种类型的图形,包括线图、散点图、直方图、饼图和热图等等。在本文中,我们将介绍如何在Python3.8中安装Matplotlib,以及如何使用它来绘制…

chatgpt赋能Python-python3_7_1如何使用

Python 3.7.1使用指南 Python自从出现以来,已经成为了一个非常流行的编程语言,每年都会更新版本以满足不断变化的市场需求。其中最新版本是Python 3.7.1,它与其前身相比提供了许多改进和新功能,同时也解决了一些已知的问题。本文…

Spark大数据处理讲课笔记4.6 Spark SQL数据源 - JDBC

文章目录 零、本讲学习目标一、Spark SQL读取关系数据库二、Spark SQL JDBC连接属性三、创建数据库与表(一)创建数据库(二)创建学生表(二)创建成绩表 四、读取和写入数据库表(一)利用…

Xcode真机运行报错:Failed to prepare the device for development解决方法

一、遇到的问题 运行Xcode然后打包APP,结果Xcode报错,如下: Failed to prepare the device for development. This operation can fail if the version of the OS on the device is incompatible with the installed version of Xcode. You …

macOS Ventura 13.4 (22F66) 正式版发布,ISO、IPSW、PKG 下载

本站下载的 macOS Ventura 软件包,既可以拖拽到 Applications(应用程序)下直接安装,也可以制作启动 U 盘安装,或者在虚拟机中启动安装。另外也支持在 Windows 和 Linux 中创建可引导介质。 请访问原文链接&#xff1a…

chatgpt赋能Python-python3_8_5安装后怎么打开

Python3.8.5安装后怎么打开:简易步骤指南 Python是一种高级编程语言,被广泛用于数据分析、机器学习、自动化、网络编程等多个方面。Python语言优雅简洁,易于上手,是编程初学者的最佳入门语言之一。本文将介绍Python3.8.5版本的安…

管道通信,共享内存

什么是有名管道 有名管道(Named Pipe)是一种特殊的文件类型,也称为 FIFO。它提供了一种进程间通信的机制,允许不相关的进程通过读写共享的文件来交换数据。 与普通文件不同的是,有名管道在文件系统中存在一个路径名&…

redis单机版本Java代码实践

pom依赖 引入redis的starter以及commons-pool2的依赖&#xff0c;commons-pool2是配置连接池需要使用的&#xff0c;不引入&#xff0c;只有连接池配置是不会创建连接池的 <!-- redis --><dependency><groupId>org.springframework.boot</groupId><…

基于协同过滤的推荐算法

基于协同过滤的推荐算法 基于协同过滤&#xff08;CF&#xff09;的推荐基于近邻的协同过滤基于用户的协同过滤&#xff08;User-CF&#xff09;基于物品的协同过滤&#xff08;Item-CF&#xff09;User-CF 和 Item-CF 的比较基于协同过滤的推荐优缺点基于模型的协同过滤隐语义…

python类的高级函数

类的高级函数 __str__ 如果定义了该函数&#xff0c;当print当前实例化对象的时候&#xff0c;会返回该函数的return信息 用法&#xff1a; def __str__(self): return str_type 参数&#xff1a;无 返回值&#xff1a;一般返回对于该类的描述信息 __getattr__ 当调用的…

JavaWeb-RequestResponse的使用

Request&Response 今日目标 掌握Request对象的概念与使用掌握Response对象的概念与使用能够完成用户登录注册案例的实现能够完成SqlSessionFactory工具类的抽取 1&#xff0c;Request和Response的概述 Request是请求对象&#xff0c;Response是响应对象。这两个对象在我们…

深入理解Java虚拟机:JVM高级特性与最佳实践-总结-7

深入理解Java虚拟机&#xff1a;JVM高级特性与最佳实践-总结-7 类文件结构概述无关性的基石 虚拟机类加载机制概述类加载的时机 类文件结构 代码编译的结果从本地机器码转变为字节码&#xff0c;是存储格式发展的一小步&#xff0c;却是编程语言发展的一大步 概述 我们写的程…

在阿里做了6年软件测试,4月无情被辞,想给划水的兄弟提个醒

先简单交代一下背景吧&#xff0c;某不知名 985 的本硕&#xff0c;17 年毕业加入阿里&#xff0c;以“人员优化”的名义无情被裁员&#xff0c;之后跳槽到了有赞&#xff0c;一直从事软件测试的工作。之前没有实习经历&#xff0c;算是6年的工作经验吧。 这6年之间完成了一次…

060:cesium设置网格Grid材质

第060个 点击查看专栏目录 本示例的目的是介绍如何在vue+cesium中设置网格材质,请参考源代码,了解GridMaterialProperty的应用。 直接复制下面的 vue+cesium源代码,操作2分钟即可运行实现效果. 文章目录 示例效果配置方式示例源代码(共93行)相关API参考:专栏目标示例效…

chatgpt赋能Python-python3_9_6怎么用

Python 3.9.6简介 Python 3.9.6是2021年6月28日发布的Python编程语言的最新版本&#xff0c;它提供了一些有用的新功能和改进&#xff0c;包括优化的解释器性能和可变构造体。它是一种功能强大的编程语言&#xff0c;既易于学习又易于使用&#xff0c;非常适用于开发Web应用程…

SaaS 产品如何选择设计协作工具?

文章内容转载腾讯 CoDesign 随着互联网及其衍生技术的发展&#xff0c;企业比以往更依赖内容去吸引、去培养自己的用户&#xff0c;寻求转化。小鹅通就是在微信生态中帮助企业通过知识服务去实现内容分发和流量聚合&#xff0c;帮助企业沉淀用户&#xff0c;提供深度私域运营服…

自定义颜色编辑选取对话框

一、简介 Qt中已经有一些封装好的对话框&#xff0c;比如QMessageBox、QColorDialog等&#xff0c;使用起来快捷方便&#xff0c;但缺点是我们无法为它们自定义样式&#xff0c;所以可能难以“融入”我们的项目。既然如此&#xff0c;那就自己做一个把。抱着这样的想法&#x…

如何成功申请计算机软件著作权【申请流程完整记录】

致谢 &#xff1a;此博文的编写包括软著的申请&#xff0c;均借鉴了大佬【万里守约】的博客 — 提示&#xff1a;此博文仅适合个人申请&#xff0c;因为我是自己一个人的项目&#xff0c;自己一个人申请软著 文章目录 前言&#xff1a;一、网站注册与实名认证二、材料准备软著申…