Skip to content

02 部署指南

GanymedeNil edited this page Apr 4, 2019 · 2 revisions

1. 节点安装

1.1 系统依赖

# yum -y install pcre-devel openssl-devel gcc curl gcc-c++

1.2 安装OpenResty

1.3 安装MySQL

  • MySQL Installer 多节点部署时共用同一MySQL数据源
  • 版本:5.7+

1.4 安装LuaRocks

1.5 安装Lua依赖库

# luarocks install penlight
# luarocks install luacrypto
# luarocks install lua-resty-jwt

1.6 创建NginxCache目录

# mkdir -p /tmp/cache/nginx

1.7 下载项目

创建项目目录
# mkdir /srv/app
进入项目目录
# cd /srv/app
下载项目源码
# git clone git@git.100tal.com:kaomanfen_open_source/api-gateway.git

1.8 导入项目数据库

进入MySQL
# mysql -u root -p passwd
创建数据库
mysql> create database gateway default character set utf8mb4 collate utf8mb4_unicode_ci;
进入数据路
mysql> use gateway;
导入数据表
mysql> source /srv/app/api-gateway/deploy/mysql/gateway.sql;
退出数据库
mysql> quit;

1.9 修改项目配置

编辑配置文件
# vim /srv/app/api-gateway/config/env.lua

修改环境变量及数据库配置
-- 环境配置(test、beta、prod)
_M.env = 'prod'

-- MySQL配置
_M.mysql = {
    db_host = '127.0.0.1',
    db_port = 3306,
    db_user = 'root',
    db_password = 'passwd',
    db_name = 'gateway',
    db_timeout = 10000,
    db_charset = 'utf8',
}

1.10 替换Nginx配置

创建Server配置目录
# mkdir -p /usr/local/openresty/nginx/conf/conf.d
替换主配置文件
# cp -rf /srv/app/api-gateway/deploy/nginx/conf/nginx.conf /usr/local/openresty/nginx/conf/nginx.conf
替换Server配置文件(配置文件中需要自行修改域名及SSL相关配置)
# cp -rf /srv/app/api-gateway/deploy/nginx/conf/conf.d/api-gateway.conf /usr/local/openresty/nginx/conf/conf.d/api-gateway.conf

1.11 测试及启动

检查配置文件
# /usr/local/openresty/bin/openresty -t
启动服务
# /usr/local/openresty/bin/openresty

2. 控制台安装

2.1 安装PHP

2.2 安装Composer

2.3 下载项目

进入项目目录
# cd /srv/app
下载API管理项目源码
# git clone git@git.100tal.com:kaomanfen_open_source/admin-api.git
下载API面板程序源码
# git clone git@git.100tal.com:kaomanfen_open_source/admin-view.git

2.3 修改API管理项目配置

进入项目目录
# cd /srv/app/admin-api/
复制配置文件
# cp .env.example .env
编辑配置文件
# vim .env
# 数据库配置
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=gateway
DB_PREFIX=
DB_USERNAME=root
DB_PASSWORD=passwd
# 不同环境节点配置
GATEWAY_IP_TEST=192.168.0.1
GATEWAY_IP_BETA=192.168.0.2,192.168.0.3
GATEWAY_IP_PROD=192.168.0.4,192.168.0.45,192.168.0.6

2.4 安装项目依赖扩展

进入API管理项目目录
# cd /srv/app/admin-api
安装依赖
# composer install -vvv
进入面板程序项目目录
# cd /srv/app/admin-view
安装依赖
# npm install
构建模板
# npm run build
拷贝模板文件到API管理项目
# cp -rf /srv/app/admin-view/dist/index.html /srv/app/admin-view/public/
# cp -rf /srv/app/admin-view/dist/static /srv/app/admin-view/public/

2.5 替换Nginx配置

替换Server配置文件(配置文件中需要自行修改域名及SSL相关配置)
# cp -rf /srv/app/admin-api/deploy/nginx/conf.d/admin-api.conf /usr/local/openresty/nginx/conf/conf.d/admin-api.conf

2.6 测试及重新启动

检查配置文件
# /usr/local/openresty/bin/openresty -t
启动服务
# /usr/local/openresty/bin/openresty

2.7 默认登录

默认创建一个管理员账号

账号:admin@admin.com

密码:123456