Sign inSign up

eolinker/goku-api-gateway-ce-node

By eolinker

•Updated over 5 years ago

基于 Golang开发的微服务网关,能够实现高性能 HTTP API 转发、多租户管理、API 访问权限控制等目的,拥有强大的自定义插件系统可以自行扩展,并且提供友好的图形化配置界面。

Image
3

2.9K

eolinker/goku-api-gateway-ce-node repository overview

⁠前言

一套完整 Goku API Gateway 由一个 控制台 和 若干个 网关节点 组成。节点通过IP地址注册在控制台中,控制台内的配置项会对所有节点生效,并且节点会通过主动更新方式获取控制台上的最新配置信息。

使用Goku API Gateway前请保证控制台与节点都安装完毕。

本文最下方附上控制台与节点的docker链接,以及网关的教程链接。

⁠为什么要使用Goku API Gateway

Goku API Gateway (悟空 API 网关)是运行在企业系统服务边界上的微服务网关。当您构建网站、App、IOT甚至是开放API交易时,Goku API Gateway 能够帮你将内部系统中重复的组件抽取出来并放置在Goku网关上运行,如进行用户授权、访问控制、防火墙、数据转换等;并且Goku 提供服务编排的功能,让企业可以快速从各类服务上获取需要的数据,对业务实现快速响应。

Goku API Gateway 的社区版本(CE)拥有完善的使用指南和二次开发指南,代码使用纯 Go 语言编写,拥有良好的性能和扩展性,并且内置的插件系统能够让企业针对自身业务进行定制开发。

并且 Goku API Gateway 支持与 EOLINKER 旗下的 API Studio 接口管理平台结合,对 API 进行全面的管理、自动化测试、监控和运维。

总而言之,Goku API Gateway 能让业务开发团队更加专注地实现业务。

⁠使用教程1

使用教程1需要先部署好控制台,若您不想部署控制台,请看 使用教程2

⁠1、进入控制台,新建节点

监听地址的IP需要和启动节点docker容器时绑定的IP 一致:

点击查看 新建节点详细教程⁠

⁠2、在控制台生成并发布配置

发布配置后,节点会读取控制台的最新配置来运行。

点击查看 发布配置的教程链接⁠

⁠3、启动节点docker容器

nodeKey可从节点列表中获取

docker run -dt -p {转发端口号}:6689 \
--network goku-ce \
--ip {节点IP} \
-v {日志挂载地址}:/app/goku-ce/node/work \
-e GOKU_ADMIN_ADDRESS={控制台IP}:7005 \
-e INSTANCE={nodeKey} \
eolinker/goku-api-gateway-ce-node

完整示例如下:

docker run -dt -p 6689:6689 \
--network goku-ce \
--ip 172.18.12.3 \
-v /app/goku-ce/work:/app/goku-ce/node/work \
-e GOKU_ADMIN_ADDRESS=172.18.12.2:7005 \
-e INSTANCE=6d0d999f9a60d51eaf0b5bb0226290ef \
eolinker/goku-api-gateway-ce-node
⁠4、查看节点运行状态

进入节点管理页面,若节点的状态显示为运行中,则节点正常启动:

⁠使用教程2

Goku网关是一套完整的私有云产品,您可以将控制台和节点部署在您的服务器上。

若您想以 最少的步骤 快速试用Goku,我们也提供了一个官方的控制台:http://goku-console.eolinker.com⁠

您可以在控制台上填写相应的配置,然后导出配置文件,节点通过读取配置文件的方式来启动。

使用步骤: 1、配置完毕后,在控制台的首页导出配置:

2、将配置上传到服务器,启动docker:

docker run -dt -p {转发端口号}:6689 \
-v {日志挂载地址}:/app/goku-ce/node/work \
-v {配置文件地址}:/app/goku-ce/node/work/goku-node.json \
eolinker/goku-api-gateway-ce-node

完整配置示例如下:

docker run -dt -p 6689:6689 \
-v /app/goku-ce/node/work:/app/goku-ce/node/work \
-v /app/goku-ce/node/versionConfig_b14a1af4-b961-4dfb-8bfe-d4d157dd651e.json:/app/goku-ce/node/work/goku-node.json \
eolinker/goku-api-gateway-ce-node

至此,您的服务已可以通过网关转发,访问地址为:{{节点IP:端口}}/{{转发URL}} 。

⁠相关链接

⁠教程相关

Tag summary

Content type

Image

Digest

Size

206.7 MB

Last updated

over 5 years ago

docker pull eolinker/goku-api-gateway-ce-node