centos7 安装git_Centos7.4 Yapi 服务搭建

Centos Yapi服务搭建

转载请标明原文出处

参考以下网址,排名不分先后

https://github.com/YMFE/yapi
https://blog.csdn.net/guangzhou007_java/article/details/90779222
https://www.jianshu.com/p/994bc7b19b26

我的服务器环境

阿里云服务器 centos 7.4
使用 https://oneinstack.com/auto/ 搭建的lnmp环境
以下所有操作全部基于root用户

环境要求

  • nodejs (7.6+)
  • mongodb (2.6+)
  • git

开始搭建

一、安装nodejs

  • 先检查是否已经安装了nodejs,如果安装了版本低于环境要求,请先卸载删除
[root@moyang /]# node -v 
  • yum删除nodejs低版本库
[root@moyang /]# yum remove nodejs npm -y
  • 删除nodejs安装目录及软链接,以下为yum安装所在目录
[root@moyang /]# rm -rf /usr/bin/npm[root@moyang /]# rm -rf /usr/bin/node[root@moyang /]# rm -rf /usr/lib/node_modules
  • 安装10以上版本nodejs
[root@moyang /]# yum clean all && yum makecache fast[root@moyang /]# yum install -y gcc-c++ make
  • 添加10以上nodejs yum库
[root@moyang /]# curl -sL https://rpm.nodesource.com/setup_10.x | sudo -E bash -
  • yum安装nodejs
[root@moyang /]# yum install -y nodejs[root@moyang /]# node -v // 本次安装的版本为:v10.19.0[root@moyang /]# npm -v // 本次安装的版本为:6.13.4

二、安装mongodb

  • 1、切换到安装目录
[root@moyang /]# cd /usr/local
  • 2、下载mongodb4.0压缩包
[root@moyang local]# wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz
  • 3、解压缩安装包,重命名文件夹 && 删除压缩包
[root@moyang local]# tar zxvf mongodb-linux-x86_64-4.0.0.tgz[root@moyang local]# mv mongodb-linux-x86_64-4.0.0 mongodb && rm -f mongodb-linux-x86_64-4.0.0.tgz
  • 4、配置环境变量 && 使其生效
[root@moyang local]# cd / && vim /etc/profileexport PATH=/usr/mongodb/bin:$PATH[root@moyang /]# source /etc/profile
  • 5、查看mongodb版本,如果正确显示,则表示环境变量配置成功
[root@moyang /]# mongod --version // 显示如下:db version v4.0.0git version: 3b07af3d4f471ae89e8186d33bbb1d5259597d51allocator: tcmallocmodules: nonebuild environment:    distarch: x86_64    target_arch: x86_6
  • 6、创建数据库目录和日志目录
[root@moyang /]# cd /usr/local/mongodb[root@moyang mongodb]# mkdir db && mkdir log && touch log/mongodb.log
  • 7、创建mongodb配置文件
[root@moyang mongodb]# vim /usr/local/mongodb/mongodb.conf // 添加以下内容# 端口port=27017# 数据库存文件存放目录dbpath=/usr/local/mongodb/db# 日志文件存放路径logpath=/usr/local/mongodb/log/mongodb.log# 使用追加的方式写日志logappend=true# 以守护进程的方式运行,创建服务器进程fork=true# 最大同时连接数maxConns=100# 不启用验证noauth=true#auth=true# 每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)# 即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。journal=true# 存储引擎有mmapv1、wiretiger、mongorocksstorageEngine=wiredTiger# 这样就可外部访问了,例如从win10中去连虚拟机中的MongoDBbind_ip=0.0.0.0
  • 8、mongodb命令 && 查看是否启动成功
[root@moyang mongodb]# ./bin/mongod -f mongodb.conf  // 启动,显示如下:about to fork child process, waiting until server is ready for connections.forked process: 30685child process started successfully, parent exiting[root@moyang mongodb]# ./bin/mongod --shutdown -f mongodb.conf  // 停止,显示如下:killing process with pid: 30685[root@moyang mongodb]# ps -ef|grep mongod // 查看mongod进程状态
  • 9、使用service服务启动mongod
[root@moyang /]# cd / && vim /etc/init.d/mongod // 添加内容如下--------------------------------------------------------#!/bin/sh#chkconfig:#MogoDB home directory MONGODB_HOME=/usr/local/mongodb#mongodb command  MONGODB_BIN=$MONGODB_HOME/bin/mongod#mongodb config fileMONGODB_CONF=$MONGODB_HOME/mongodb.conf#mongodb PIDMONGODB_PID=/var/run/mongo.pid#set open file limitSYSTEM_MAXFD=65535MONGODB_NAME="mongodb". /etc/rc.d/init.d/functionsif [ ! -f $MONGODB_BIN ]    then        echo "$MONGODB_NAME startup: $MONGODB_BIN not exists! "          exitfistart(){    ulimit -HSn $SYSTEM_MAXFD    $MONGODB_BIN -f "$MONGODB_CONF"    ret=$?    if [ $ret -eq 0 ]; then        action $"Starting $MONGODB_NAME: " /bin/true    else        action $"Starting $MONGODB_NAME: " /bin/false    fi}stop(){    PID=$(ps aux |grep "$MONGODB_NAME" |grep "$MONGODB_CONF" |grep -v grep |wc -l)    if [[ $PID -eq 0  ]];then        action $"Stopping $MONGODB_NAME: " /bin/false        exit    fi    kill -HUP `cat $MONGODB_PID`    ret=$?    if [ $ret -eq 0 ]; then        action $"Stopping $MONGODB_NAME: " /bin/true        rm -f $MONGODB_PID    else        action $"Stopping $MONGODB_NAME: " /bin/false    fi}restart() {    stop    sleep 2    start}case "$1" in    start)        start        ;;    stop)        stop        ;;    status)        status $prog        ;;    restart)        restart        ;;    *)        echo $"Usage: $0 {start|stop|status|restart}"esac--------------------------------------------------------[root@moyang /]# chmod +x /etc/init.d/mongod[root@moyang /]# service mongod start       // 启动服务[root@moyang /]# service mongod restart     // 重启服务[root@moyang /]# service mongod stop        // 停止服务
  • 10、配置系统服务启动mongod
[root@moyang /]# vim /lib/systemd/system/mongod.service// 添加内容如下--------------------------------------------------------[Unit]Description=mongodbAfter=network.target remote-fs.target nss-lookup.target[Service]Type=forkingExecStart=/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/mongodb.confExecReload=/bin/kill -s HUP $MAINPIDExecStop=/usr/local/mongodb/bin/mongod --shutdown -f /usr/local/mongodb/mongodb.confPrivateTmp=true[Install]WantedBy=multi-user.target--------------------------------------------------------[root@moyang /]# chmod 754 /lib/systemd/system/mongod.service[root@moyang /]# systemctl status mongod.service    // 查看启动状态[root@moyang /]# systemctl start mongod.service     // 启动服务[root@moyang /]# systemctl restart mongod.service   // 重启服务[root@moyang /]# systemctl stop mongod.service      // 停止服务

00f">小知识:开机启动服务相关命令

centos7自启项已不用chkconfig

  • https://www.cnblogs.com/zwcry/p/9602756.html
  • 查看开机自启项 左边是服务名称,右边是状态,enabled是开机启动,disabled是开机不启动
[root@moyang /]# systemctl list-unit-files
  • 过滤查看开机启动项
[root@moyang /]# systemctl list-unit-files | grep enabled[root@moyang /]# systemctl list-unit-files | grep mongod
  • 启用 | 禁用 开机启动
[root@moyang /]# systemctl enable mongod    // 启用[root@moyang /]# systemctl disable mongod   // 禁用

三、安装git

[root@moyang /]# yum -y install git

开始部署Yapi

注意事项

云服务器请先确认安全组是否开放 3000 9090端口
服务器的防火墙和iptables是否开放 3000 9090端口或者可以直接关闭这两个服务

http://tool.chinaz.com/port/

  1. 开始搭建YApi,安装命令
[root@moyang /] npm install -g yapi-cli --registry https://registry.npm.taobao.org
  1. 启动服务
[root@moyang /] yapi server在浏览器打开 http://0.0.0.0:9090 访问。非本地服务器,请将 0.0.0.0 替换成指定的域名或ip  
  1. 在线部署
  • 在浏览器访问 :9090 服务器公网ip>
  • 根据提示配置,如果mongodb数据库开启了权限认证,需要开启下图的数据库认证,并且输入数据库账号,密码
  • 部署完成启动Yapi服务,这种模式shell终端不能关闭
[root@moyang /] node /vendors/server/app.js
yapi服务管理

利用pm2方便服务管理维护。

// 更换npm淘宝镜像源[root@moyang /] npm config set registry https://registry.npm.taobao.org// 安装pm2[root@moyang /] npm install pm2 -g// pm2管理yapi服务[root@moyang /] cd  {yapi部署路径}[root@moyang yapi] pm2 start "vendors/server/app.js" --name yapi //启动服务[PM2] Starting /data/wwwroot/yapi/vendors/server/app.js in fork_mode (1 instance)[PM2] Done.┌─────┬─────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐│ id  │ name    │ namespace   │ version │ mode    │ pid      │ uptime │ ↺    │ status    │ cpu      │ mem      │ user     │ watching │├─────┼─────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤│ 0   │ yapi    │ default     │ 1.8.7   │ fork    │ 13231    │ 0s     │ 0    │ online    │ 0%       │ 13.1mb   │ root     │ disabled │└─────┴─────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴─────────[root@moyang /] pm2 info yapi       //查看服务信息[root@moyang /] pm2 stop yapi       //停止服务[root@moyang /] pm2 restart yapi    //重启服务

00f">小知识:mongodb开启权限验证

https://www.jianshu.com/p/62736bff7e2e
也可以使用windows终端https://robomongo.org/

  1. 首先检查mongodb.conf设置,设置不使用权限认证
[root@moyang /] vim /usr/loca/mongodb/mongodb.confnoauth=true#auth=true
  1. 使用shell终端工具连接mongod,创建用户及用户权限
[root@moyang /] ./usr/local/mongodb/bin/mongoMongoDB shell version v4.0.0connecting to: mongodb://127.0.0.1:27017MongoDB server version: 4.0.0> use admin> db.createUser({user:"root",pwd:"root",roles:["root"]})Successfully added user: { "user" : "root", "roles" : [ "root" ] }> use yapi> db.createUser({user:"yapi",pwd:"yapi",roles:["dbOwner"]})Successfully added user: { "user" : "yapi", "roles" : [ "dbOwner" ] }> exit
  1. 修改mongodb.conf,设置使用权限认证,重启mongod服务
[root@moyang /] vim /usr/loca/mongodb/mongodb.conf#noauth=trueauth=true[root@moyang /] service mongod restart

开始使用

  1. 在浏览器访问 :3000 服务器公网ip> 就可以开始使用yapi了
  2. 点击登录 账号: 在线部署时填写的管理员邮箱> 密码: > 默认密码:>
  3. 登录成功后可以修改密码
3388a8d249e87d5e3885778a6b93d50a.png

去未知的世界进行探索

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

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

相关文章

python中execute函数_Python中的函数定义与参数使用

本节知识点:(1)函数定义格式;(2)五种参数使用函数定义 基本语法格式def function_name( parameter_list ): return values函数通常为小写英语单词及其组合,以下划线隔开,例如:sum、mean、cost_calculat…

内存spd规范_C语言内存泄露很严重,如何应对?

原文:https://blog.csdn.net/devcloud/article/details/1083359121.前言 最近部门不同产品接连出现内存泄漏导致的网上问题,具体表现为单板在现网运行数月以后,因为内存耗尽而导致单板复位现象。一方面,内存泄漏问题属于低级错误&…

接口测试的持续集成的工具(git代码管理工具,jenkins持续集成)

持续集成的概念:大白话就是持续的做一件事情,使其使用起来更加流畅;结合测试来讲就是说用工具管理好代码的同时,使代码运行的更加自动以及智能;提升测试效率。 ⽹址:https://git-scm.com/downloads 长这个…

Java学习笔记—UDP通信

一、UDP通信原理 UDP协议(用户数据报协议 User Datagram Protocol)是一种无连接通信协议, 即在数据传输时数据发送端和接收端不建立逻辑链接。因此UDP协议是一种 不可靠的网络协议,它在通信的两端各建立一个Socket对象,但是这两个 Socket只是…

qt调用import sys库_Python模块之 sys 模块

引入1.什么是 sys 模块sys 模块是与 Python 解释器交互的一个接口该模块提供对解释器使用或维护的一些变量的访问和获取它提供了许多函数和变量来处理 Python 运行时环境的不同部分一.常见用法介绍1.sys.argv实现从程序的外部向程序传递参数返回的是一个列表, 第一个元素是程序…

A20 lvds

LVDS0: 数据线 LVDS0-VP0 LVDS0-VN0 LVDS0-VP1 LVDS0-VN1 LVDS0-VP2 LVDS0-VN2 时钟线 LVDS0-VPC LVDS0-VNC 电源线 插座的1,2,3接电源,最终连到 LCD-PWR 背光 另外背光单独在另一个插座上,LVDS0和LVDS1是一致的。 4…

顺丰快递单号的规律_顺丰快递顺丰快递查询单号查询

查询快递前:请先点击上面蓝字” 顺风快递快件单号查询“关注,关注后即可免费查询快递!顺丰快递 顺丰快递查询 顺丰快递单号查询记下货物的订单号码。打开顺丰快递的官方网站。快件追踪中写入要查询的订单号码。输入订单号、验证码…

Java学习笔记—TCP通信

一、TCP通信原理 TCP(Transmission Control Protocol)协议是面向链接的通信协议,即数据传输之前,先在发送端和接收端建立逻辑链接,然后再传输数据,它提供了两台计算机之间可靠无差错的数据传输。TCP通信中必须明确客户端和服务器端…

Python 网页编程- Pyramid 安装测试

http://docs.pylonsproject.org/projects/pyramid/en/1.4-branch/narr/install.html 是我在csdn的博客:http://blog.csdn.net/spaceship20008/article/details/8767884 放在cnblogs做备份 按照介绍操作。 我用的是mint13, python 3.2.3版本。 使用的是virtualenv 开…

excel 2007 vba与宏完全剖析_Excel怎么保护自己的劳动成果?强制用户启用宏,再加上这一步...

知识改变命运,科技成就未来。当Excel工作簿中含有VBA代码时,用户在使用时需要启用宏,否则工作簿的某些功能就会失效。或者是编辑的VBA代码含有定期删除指令,为了保证工作簿的安全性,和防止他人禁用宏造成知识产权法受到…

用python画国旗的程序_用Python的Turtle模块绘制五星红旗

Turtle官方文档 turtle的基本操作 # 初始化屏幕 window turtle.Screen() # 新建turtle对象实例 import turtle aTurtle turtle.Turtle() # 海龟设置 aTurtle.hideturtle() # 隐藏箭头 aTurtle.speed(10) # 设置速度 # 前进后退,左转右转 aTurtle.fd(100) # 前进10…

丰田pcs可以关闭吗_丰田新款卡罗拉变化这么大 让老车主陷入沉思

【太平洋汽车网 导购频道】小胖是一名95后的汽车编辑,年纪轻轻又从事汽车编辑这一岗位,大家可能会觉得他肯定是一位充满热血、喜欢驾驶、热爱汽车的年轻人,那如果我告诉你小胖的座驾是一辆老卡罗拉(询底价|查参配),你还会觉得小胖…

python从小白到大牛pdf 下载 资源共享_Kotlin从小白到大牛 (关东升著) 中文pdf高清版[12MB]...

本书是一本Kotlin语言学习立体教程,主要内容包括:Kotlin语法基础、Kotlin编码规范、数据类型、字符串、运算符、程序流程控制、函数、面向对象基础、继承与多态、抽象类与接口、高阶函数、Lambda表达式、数组、集合、函数式编程API、异常处理、线程、协程…

MySQL——基本配置

一、新建配置文件 在MySQL的安装目录下D:\Mysql\mysql-8.0.28-winx64\bin中新建一个文本文件,文件内容如下: [mysql] default-character-setutf8[mysqld] character-set-serverutf8 default-storage-engineINNODB sql_modeSTRICT_TRANS_TABLES,NO_ZERO_…

在mac上用文本编辑器写python_Mac系统Python解释器、PyCharm编辑器安装及使用方法详解...

『环境配置』- 工欲善其事,必先利其器 视频讲解教程:[Mac系统Python开发环境配置教程详解(Python技术客栈)](https://www.bilibili.com/video/av80761677)【开发环境配置】Mac系统Python开发环境配置教程详解(Python技…

hdu 2149 巴什博弈

http://acm.hdu.edu.cn/showproblem.php?pid2149 分析:就是巴什博弈的概念。 题目要求:对于每组数据,在一行里按递增的顺序输出Lele第一次可以加的价。两个数据之间用空格隔开。如果Lele在第一次无论如何出价都无法买到这块土地,…

MySQL——数据库和表的增删改查

1、DDL操作数据库 ①查询 SHOW DATABASES;②创建 创建数据库 CREATE DATABASE 数据库名称; 创建数据库(判断,如果则创建) CREATE DATABASE IF NOT EXISTS 数据库名称;③删除 删除数据库 DROP DATABASE 数据库名称; 删除数据库(判断,如果存在则删除) DRO…

pc模式 华为mate30_号称“重构想象”的华为Mate30系列,到底有多颠覆?一睹为快...

9月19日迎来了华为全球发布会,和9月11日的苹果新品发布会时间挨得非常近,大家感受到了什么吗?华为Mate30系列于北京时间9月19日晚上8点在慕尼黑正式亮相了,以“重构想象”为主题,发布了4款新机:Mate30、Mat…

python数据分析师书籍_如何自学成为数据分析师

展开全部 第1本《谁说菜2113鸟不会数据5261分析入门篇》 很有趣的数据分析书!基本看过就能明白4102,以小说的1653形式讲解,很有代入感。包含了数据分析的结构化思维、数据处理技巧、数据展现的技术,很能帮我们提升职场竞争能力。找…

Java进阶07 嵌套类

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢! 到现在为止,我们都是在Java文件中直接定义类。这样的类出现在包(package)的级别上。Java允许类的嵌套定义。 这里将讲解如何在一个类…