Orange 是一个基于 OpenResty 的API网关。除 Nginx 的基本功能外,它还可用于API监控、访问控制(鉴权、WAF)、流量筛选、访问限速、AB测试、静/动态分流 等。它有以下特性:
- 提供了一套默认的
Dashboard用于动态管理各种功能和配置。 - 提供了API接口用于实现第三方服务(如
个性化运维需求、第三方Dashboard等)。 - 可根据规范编写自定义插件扩展
Orange功能。
我们推荐使用 luarocks 来安装 Orange,以减少由不同操作系统发行版本中的依赖项扩展引起的问题。
在不同的操作系统上安装 Orange 所必需的系统依赖(openresty、resty-cli、luarocks等),请参见:依赖安装文档。
查看Lor Framework官方文档或执行以下命令。
git clone https://github.com/sumory/lor.git
cd lor
sudo make installcurl -Lo install.sh https://raw.githubusercontent.com/orlabs/orange/master/install/install-orange.sh
sudo sh install.sh安装过程结束后,输出消息 orange 0.8-1 is now installed in /usr/local/orange/deps (license: MIT) 即说明安装成功。
要求:MySQL版本 5.5+
-
登录到
MySQL客户端,创建一个orange数据库。 -
导入数据表(
/usr/local/orange/conf/orange-v0.8.1.sql)。 -
修改
Orange配位置文件中(/usr/local/orange/conf/orange.conf)MySQL相关配置。
sudo orange startOrange 启动成功后,Dashboard 和 API server 也随之启动:
- 通过
http://localhost:9999访问Dashboard。 - 通过
http://localhost:7777访问API Server。
至此,Orange已全部安装并配置完毕,请尽情享受。
请使用 生产环境安装 方式中的 安装依赖项 和 安装 Lor Framework 方法进行安装。
git clone https://github.com/orlabs/orange.git
cd orange
sudo make dev安装过程结束后,输出消息 Stopping after installing dependencies for orange-master 1.0-0 即说明安装成功。
请使用 生产环境安装 方式中的 导入 MySQL 方法进行导入。
注意:在开发模式下安装 Orange。
-
MySQL数据表文件和Orange配置文件位于当前项目的conf文件夹中。 -
请导入
master分支SQL文件(/usr/local/orange/conf/orange-master.sql)。
sudo ./bin/orange start成功启动 Orange 后的访问方式,请参考:生产环境安装 方式中的 启动 Orange。
通过命令行工具orange来管理, 执行orange help查看有哪些命令可以使用:
Usage: orange COMMAND [OPTIONS]
The commands are:
start Start the Orange Gateway
stop Stop current Orange
reload Reload the config of Orange
restart Restart Orange
store Init/Update/Backup Orange store
version Show the version of Orange
help Show help tips
https://store.docker.com/community/images/syhily/orange 由@syhily维护.
- @syhily
- @lhmwzy
- @spacewander
- @noname007
- @itchenyi
- @Near-Zhang
- @khlipeng
- @wujunze
- @shuaijinchao
- @EasonFeng5870
- @zhjwpku
Orange的插件设计参考自Kong.
MIT License