A Gateway based on OpenResty(Nginx+lua) for API Monitoring and Management.
- MySQL v5.5+
- OpenResty v1.9.7.3+ or Nginx+lua module
- install OpenResty with
--with-http_stub_status_module
option
- install OpenResty with
- Lor Framework please mind:
- Orange v0.6.1 and versions before v0.6.1 are compatible with lor v0.2.*
- Orange v0.6.2+ is compatible with lor v0.3.0+
Import the SQL file(e.g. install/orange-v0.7.0.sql) which is adapted to your Orange version into MySQL database named orange
.
- Install luarocks and opm tools
- The Version of luarocks is higher than LuaRocks 2.2.2
- Opm tool is integrated in Openresty, it is under the openresty/bin directory
- Install dependencies
#cd orange // Go to the Orange root directory
#opm --install-dir=./ get zhangbao0325/orangelib //opm download the 3rd packages
#luarocks install luafilesystem //luarocks install lua dependencies
#luarocks install luasocket
#luarocks install lrandom
- Generate configuration file
#cd conf
#cp orange.conf.example orange.conf
#cp nginx.conf.example nginx.conf
Attention:
- the directive "store_mysql" in orange.conf should be modified as your mysql configuration,
- the directive "lua_package_path" should add your lua package installation path of luarocks tool;
- script management
use shell scripts (e.g. start.sh
) to manage Orange.
- CLI tools
In addition to start.sh
script, a new cli tool could be utilized to manage Orange. You should install the cli first:
// orange root directory
# make install // Installation CLI tools
then, the Orange runtime lua module is installed in /usr/local/orange
and an executable command named /usr/local/bin/orange
is generated.
Before starting Orange, you should ensure that the orange.conf
and nginx.conf
are redefined to satisfy the demands of your project.
- script management
Just sh start.sh
to start Orange. You could rewrite some other shell scripts as you need.
- CLI tool
orange help
to check usages:
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
Find more about Orange on its website. There is only a Chinese version for now.
https://store.docker.com/community/images/syhily/orange maintained by @syhily
- @syhily
- @lhmwzy
- @spacewander
- @noname007
- @itchenyi
- @Near-Zhang
- @khlipeng
- @wujunze
- @shuaijinchao
- @EasonFeng5870
- @zhjwpku
The plugin architecture is highly inspired by Kong.