linux搭建yapi

1.安装Node.js

安装教程:https://www.runoob.com/nodejs/nodejs-install-setup.html

Node.js 安装包及源码下载地址为:https://nodejs.org/en/download/

Node 官网已经把 linux 下载版本更改为已编译好的版本了,我们可以直接下载解压后使用:

# wget https://nodejs.org/dist/v10.9.0/node-v10.9.0-linux-x64.tar.xz    // 下载
# tar xf  node-v10.9.0-linux-x64.tar.xz       // 解压
# cd node-v10.9.0-linux-x64/                  // 进入解压目录
# ./bin/node -v                               // 执行node命令 查看版本
v10.9.0

解压文件的 bin 目录底下包含了 node、npm 等命令,我们可以使用 ln 命令来设置软连接:

ln -s /usr/software/nodejs/bin/npm   /usr/local/bin/ 
ln -s /usr/software/nodejs/bin/node   /usr/local/bin/

2.安装mongoDB

安装教程:https://www.runoob.com/mongodb/mongodb-linux-install.html

1、使用Xftp将压缩包上传到指定目录下:

cd /usr/local/
mkdir mongodb
tar -zxvf mongodb-linux-x86_64-4.0.13 #文件名根据你自己的压缩包文件名来
  •  

2、创建mongodb数据存储文件和日志文件

cd /usr/local/mongodb/
mkdir data
mkdir logs
cd ./logs
touch mongodb.log
cd ../
mkdir etc
cd etc
touch mongodb.conf

mongodb.conf配置文件:

#数据库路径
dbpath=/usr/local/mongodb/data
#日志输出文件路径
logpath=/usr/local/mongodb/logs/mongodb.log
#错误日志采用追加模式
logappend=true
#启用日志文件,默认启用
journal=true
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet=true
#端口号 默认为27017
port=27017
#允许远程访问
bind_ip=0.0.0.0
#开启子进程
fork=true
#开启认证,必选先添加用户,先不开启(不用验证账号密码)
#auth=true

3、将mongodb服务加入环境变量

vi /etc/profile
  • 1

在最后一行添加:

export PATH=$PATH:/usr/local/mongodb/mongodb-linux-x86_64-4.0.13/bin
  • 1

使配置文件生效:

source /etc/profile
  • 1

二、启动mongodb服务

1、在mongodb的安装目录下的bin目录下启动服务:

./mongod --config /usr/local/mongodb/etc/mongodb.conf
  • 1

在这里插入图片描述

2、 查看mongodb是否已经启动成功

netstat -lanp | grep "27017"
  • 1

显示如下进程,说明已经成功启动。

在这里插入图片描述

3、 操作mongo数据库

任意目录下,输入命令mongo即可进入数据库,配置了环境变量的前提下,否则需要在mongodb安装目录下的bin目录下使用 ./mongo 命令

mongo

显示如下,已经成功进入mongo数据库了,默认是进入的是test数据库show dbs 查看当前所有数据库。

在这里插入图片描述
注意:如果一个数据库是没有安全认证的,不使用用户名密码即可登陆,这样是不安全的,所以我们应当授予权限才能操作数据库,这样再企业中才能保证数据安全性。

三、添加用户、安全认证

首先必须使用admin数据库,进行新用户授权。

MongoDB副本集默认会创建local、admin数据库,local数据库主要存储副本集的元数据,admin数据库则主要存储MongoDB的用户、角色等信息。

在这里插入图片描述
输入以下命令:

db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})
  •  

在这里插入图片描述
授权成功后,关闭mongo服务:

db.shutdownServer()
  •  

显示如下,即已经成功关闭服务:

在这里插入图片描述
查看mongo服务进程,可看到服务已经成功停掉了。

在这里插入图片描述
然后需要到配置文件中修改配置,启用安全认证。
在这里插入图片描述

#开启认证,必选先添加用户
auth=true
  •  

最后开启mongo服务,进入数据库测试:

./mongod --config /usr/local/mongodb/etc/mongodb.conf
  •  

show dbs此时看不到任何数据库,说明我们的安全认证用户配置生效了。

在这里插入图片描述
首先使用use admin通过db.auth(‘root’,‘密码’) 输出1就是验证成功。

use admin
db.auth('root','123456')
  •  

在这里插入图片描述

四、客户端远程连接

注意:(如果是阿里云服务器,记得设置mongodb端口开放规则27017)

官网下载链接:https://nosqlbooster.com/downloads

该工具支持Windows、Linux 和 Mac OS、而且免费可放心下载。
在这里插入图片描述
下载后直接打开:

在这里插入图片描述
输入验证用户名和密码,以及数据库(随便填已有的数据库名称):

在这里插入图片描述
连接成功:

在这里插入图片描述

或者你也可以这样测试:ip+默认端口号:

在这里插入图片描述
这样也是连接成功了,并且外网ip也可以访问mongo数据库了。

五、防火墙端口开放

注意:如果外网ip不能访问、也就是客户端无法连接,可能是需要放行防火墙端口。

比如防火墙放行8080端口、80端口等。

在这里插入图片描述

1、开启防火墙

systemctl start firewalld
  •  

2、防火墙状态

systemctl status firewalld
  •  

3、设置防火墙mongo放行端口

–permanent代表永久开启:

firewall-cmd --zone=public --add-port=27017/tcp --permanent
  •  

4、重启防火墙

firewall-cmd --reload
  •  

5、查看防火墙放行端口

firewall-cmd --list-ports
  •  

6、关闭防火墙端口

firewall-cmd --zone=public --remove-port=27017/tcp --permanent
  •  

7、开启设置防火墙

(1)设置开机启用防火墙:systemctl enable firewalld.service

(2)设置开机禁用防火墙:systemctl disable firewalld.service
  •  

命令含义:

–zone #作用域
–add-port=9200/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效

注意:添加端口后,必须用命令firewall-cmd --reload重新加载一遍才会生效

3.安装yapi

离线安装yapi

在一台连接互联网的pc上安装node环境

在外网机器获取yapi源码并安装依赖

使用git获取yapi源码, 如果没有git命令请按照对应平台的安装方法安装git.

创建一个新文件夹yapi, 使用clone将yapi源码放入vendors中:

mkdir yapi
cd yapi
git clone https://github.com/YMFE/yapi.git vendors
cp vendors/config_example.json ./config.json
cd vendors
npm install --production

我这里还安装了pm2

    
npm n install -S pm2

将创建的yapi文件夹打成压缩包得到yapi.tar.gz(其目录下有config.json和vendors)

tar -czf yapi.tar.gz yapi

至此, 所有需要外部网络的操作已经完成, 可以进行内网部署.

启动yapi

解压yapi.tar.gz

mkdir yapi
cd yapi
tar -xvf yapi.tar
cp vendors/config_example.json ./config.json

# 配置config.json
{
  "port": "3000",
  "adminAccount": "admin@admin.com",
  "db": {
    "servername": "127.0.0.1",
    "DATABASE": "yapi",
    "port": 27017,
    "user": "root",
    "pass": "xxx",
    "authSource": "admin"
  },
  "mail": {
    "enable": true,
    "host": "smtp.exmail.qq.com",
    "port": 465,
    "from": "xxx@xxx.cn",
    "auth": {
      "user": "xxx@xxx.cn",
      "pass": "xxx"
    }
  }
}
# 配置config.json

#初始化数据库
cd vendors
npm run install-server

#启动yapi server
node server/app.js
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值