centos 7 部署 yapi

yapi是高效、易用、功能强大的API管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务

部署环境要求:

1)nodejs(7.6+)

2)mongodb(2.6+)

一、安装nodejs 

1、首先安装wget 

yum install -y wget

如果已经安装了可以跳过该步, -y 参数代表跳过询问

2、下载nodejs最新的bin包 下载地址:https://nodejs.org/en/download/

wget https://nodejs.org/dist/v9.3.0/node-v9.3.0-linux-x64.tar.xz

然后就是等着下载完毕。
另外你也可以在你喜欢的任意系统上下载最新的bin包,然后通过FTP上传到CentOS上。

3、解压包

依次执行

xz -d node-v9.3.0-linux-x64.tar.xz
tar -xf node-v9.3.0-linux-x64.tar

4、部署bin文件

先确认你nodejs的路径,我这里的路径为/root/node/bin,确认后依次执行

 ln -s /root/node/bin/node /usr/bin/node

 ln -s /root/node/bin/npm /usr/bin/npm

 ln -s /root/node/bin/npm /usr/bin/npx

注意ln指令用于创建关联(类似与Windows的快捷方式)必须给全路径,否则可能关联错误.

5.测试

node -v

npm

npx

6、安装pm2

 npm install -g pm2

ln -s /data/node-v12.4.0-linux-x64/bin/pm2 /usr/bin/pm2  这里安装之后需要指定软连接

 

二、安装mongodb

1、官网下载mongodb 解压到指定路径即可

    解压:tar -zxvf mongodb-linux-x86_64-4.0.6.tgz

  移动:mv ./mongodb-linux-x86_64-4.0.6 /usr/local/mongodb

2、创建用户

[root@mongo ~]# useradd mongod

[root@mongo ~]# echo 123456|passwd --stdin mongod
 
3、在/usr/local/mongodb/ 目录下创建db

创建db目录和日志文件

   mkdir -p ./data/db

   mkdir -p ./logs

   touch ./logs/mongodb.log

 

创建mongodb.conf文件

vim mongodb.conf

#端口号
port=27017
#db目录
dbpath=/usr/local/mongodb/data/db
#日志目录
logpath=//usr/local/mongodb/logs/mongodb.log
#后台
fork=true
#日志输出
logappend=true
#允许远程IP连接
bind_ip=0.0.0.0

 

4、

 1)启动

  ./bin/mongod --config mongodb.conf

centos 7 部署 yapi

 

 

  2)连接

  ./bin/mongo

centos 7 部署 yapi

3)测试

centos 7 部署 yapi

 

5.配置mongodb服务开机启动

       1)设置mongodb.service开机服务启动   

       cd /lib/systemd/system
       cat >>mongodb.service<<"EOF"
  [Unit]
  Description=mongodb
  After=network.target remote-fs.target nss-lookup.target

  [Service]
  Type=forking
  ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf
  ExecReload=/bin/kill -s HUP $MAINPID
  ExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/mongodb.conf
  PrivateTmp=true

  [Install]
  WantedBy=multi-user.target
       EOF

 

     然后设置mongodb.service权限

     chmod +x mongodb.service

 

  #启动服务

     systemctl start mongodb.service    

     #停止服务

     systemctl stop mongodb.service

     #添加开机自启动

     systemctl enable mongodb.service

     #重启服务

     systemctl restart mongodb.service

 

 2)添加环境变量

     1、直接用export命令:
     export PATH=$PATH:/usr/local/mongodb/bin


     2、修改profile文件:
     cat >>/etc/profile<<"EOF"
     export PATH="$PATH:/usr/local/mongodb/bin"

     EOF

     #刷新profile文件:

     source  /etc/profile


     3、 修改.bashrc文件:

     cat >>/root/.bashrc<<"EOF"
     export PATH="$PATH:/usr/local/mongodb/bin"

     EOF


     上述三步依次执行完毕,环境变量配置完成!!!!

      重启服务器,输入mongo 回车就有了。。。。。

 

 

注意:

MongoDB使用mongo报错1:

connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
2019-07-18T15:02:35.529+0800 E QUERY [js] Error: couldn‘t connect to server 127.0.0.1:27017, connection attempt failed: SocketException: Error connecting to 127.0.0.1:27017 :: caused by :: ???????????????????????????? :
connect@src/mongo/shell/mongo.js:342:17
在命令行中输入mongo出现连接错误

方法:

首先在命令窗口./mongod,该窗口不要关闭,再另起窗口输入mongo启动即可‘

mongod 和 mongo 的区别?

mongod 是启用Mongodb进程,可配置路径进行启用 mongod --dbpath   ①

mongo 命令是连接数据库服务,即连接服务器,可以通过端口进行访问(27017)②

MongoDB使用mongo报错2:

浏览器死活远程访问不了:

未指定访问配置文件,导致未更新

centos 7 部署 yapi

启动命令:指定配置文件启动

 

3.3 禁用selinux  官方教程有提到selinux对mongodb会产生负面影响,故选择禁用

 # 修改config文件 

vim /etc/selinux/config

 将SELINUX=enforcing改为SELINUX=disabled,wq保存。

 # 重启OS 

reboot

 3.4 关闭防火墙

 由于需要做数据迁移,所以直接省事将防火墙直接关了。

 # 关闭,并取消开机启动

systemctl stop firewalld
systemctl disable firewalld

firewall-cmd --state 查看运行状态

创建管理员用户:

mongodb -mongoDB 没有无敌用户root,只有能管理用户的用户 userAdminAnyDatabase

db.createUser({user:"admin",pwd:"123456",roles:["userAdminAnyDatabase"]})
注:添加完用户后可以使用show users或db.system.users.find()查看已有用户
这里注意不要使用kill直接去杀掉mongodb进程,(如果这样做了,请去data/db目录下删除mongo.lock文件),可以使用db.shutdownServer()关闭,在admin数据库里操作

认证,返回1表示成功

db.auth("admin","123456") 

创建操作用户:

db.createUser({user: "root",pwd: "123456",roles: [{ role: "readWrite", db: “admin” }]})  创建操作数据库用

 

 


https://blog.csdn.net/u010010606/article/details/79666382?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

6.推荐一款mongodb可视化工具

  Robo 3T :https://robomongo.o

 

 

部署yapi

npm install -g yapi-cli --registry https://registry.npm.taobao.org
yapi server  执行失败--切换到yapi所在路径,./yapi server 即可
centos 7 部署 yapi

 

 

填完信息,开始部署

启动yapi: 

cd /root/node/bin/my-yapi

node vendors/server/app.js 

 

配置文件:/root/node/bin/my-yapi/config.json

 

五、部署Supervisor

 Supervisor是守护进程服务,在没有守护进程之前存在一些问题:

  1.  应用程序运行在当前终端发起的子shell中,hangup信号中断后会导致应用退出,我们不可能在长期使用的环境中用一个终端去做长连接。
  2.  当服务器重启后,还是需要人工连上服务器启动服务。
  3.  进程出现意外终止,等人为发现再连上去开启,这样的反应显然已经慢了。

5.1 安装

yum install python-setuptools -y
easy_install supervisor

 centos 7 部署 yapi

 

 

5.2 修改配置

 # 创建目录/etc/supervisor 

mkdir /etc/supervisor

 # 创建supervisord.conf模板文件 

echo_supervisord_conf > /etc/supervisor/supervisord.conf

 # 修改文件supervisord.conf 

vim /etc/supervisor/supervisord.conf

 增加下面的内容,wq保存。 

[include]
files = conf.d/*.conf

??如果服务已启动,修改配置文件可用“supervisorctl reload”命令来使其生效)

 # 创建目录/etc/supervisor/conf.d/ 

mkdir -p /etc/supervisor/conf.d/

 # 修改文件YApi.conf

vim /etc/supervisor/conf.d/YApiGhost.conf

 增加下面的内容,wq保存。

[program: YApiGhost]
command=node vendors/server/app.js ; 运行程序的命令
directory=/root/my-yapi ; 命令执行的目录
autorestart=true ; 程序意外退出是否自动重启
stderr_logfile=/var/log/YApiGhost.err.log ; 错误日志文件
stdout_logfile=/var/log/YApiGhost.out.log ; 输出日志文件
environment=ASPNETCORE_ENVIRONMENT=Production ; 进程环境变量
user=root ; 进程执行的用户身份
stopsignal=INT

 5.3 启动

 # 根据supervisord.conf启动守护进程

supervisord -c /etc/supervisor/supervisord.conf

 # 查看进程

ps -ef | grep YApiGhost

 如果存在YApiGhost 进程则代表运行成功。

centos 7 部署 yapi

 

 

5.4 设置为开机启动

 # 修改文件supervisord.service 

vim /usr/lib/systemd/system/supervisord.service

 添加下面的内容,wq保存。 

[Unit]
Description=Supervisor daemon

[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
ExecStop=/usr/bin/supervisorctl shutdown
ExecReload=/usr/bin/supervisorctl reload
KillMode=process
Restart=on-failure
RestartSec=42s

[Install]
WantedBy=multi-user.target 

 # 开机启动

systemctl enable supervisord

 

 

 

 

centos 7 部署 yapi

上一篇:如何在UI5视图里包含原生的HTML视图


下一篇:Linux操作系统编程 实验二 进程管理