本文最后更新于:2024年5月19日 下午
Kong安装配置
资料
Kong或Kong API Gateway是一种云原生、平台无关、可扩展的 API 网关,以其高性能和插件可扩展性而著称。
通过为代理提供的功能,路由,负载平衡,健康检查,验证(和更多),孔用作用于编排微服务或常规API流量容易中心层。
开源地址:
https://github.com/Kong/kong
https://github.com/pantsel/konga
创建Docker network 用于容器通讯
1
| docker network create kong-net
|
启动PostgreSQL数据库容器
1 2 3 4 5 6 7
| docker run -d --name kong-database \ --network=kong-net \ -p 5432:5432 \ -e "POSTGRES_USER=kong" \ -e "POSTGRES_DB=kong" \ -e "POSTGRES_PASSWORD=kong" \ postgres:9.6
|
初始化kong数据库,使用临时 Kong 容器运行迁移
1 2 3 4 5 6 7 8
| docker run --rm \ --network=kong-net \ -e "KONG_DATABASE=postgres" \ -e "KONG_PG_HOST=kong-database" \ -e "KONG_PG_USER=kong" \ -e "KONG_PG_PASSWORD=kong" \ -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \ kong:latest kong migrations bootstrap
|
启动Kong
这里替换宿主机端口8000为8002,服务器端口被占用的解决方案
参数-p 0.0.0.0:8001:8001 是为了能外网访问8001端口
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| docker run -d --name kong \ --network=kong-net \ -e "KONG_DATABASE=postgres" \ -e "KONG_PG_HOST=kong-database" \ -e "KONG_PG_USER=kong" \ -e "KONG_PG_PASSWORD=kong" \ -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \ -e "KONG_PROXY_ACCESS_LOG=/dev/stdout" \ -e "KONG_ADMIN_ACCESS_LOG=/dev/stdout" \ -e "KONG_PROXY_ERROR_LOG=/dev/stderr" \ -e "KONG_ADMIN_ERROR_LOG=/dev/stderr" \ -e "KONG_ADMIN_LISTEN=0.0.0.0:8001, 0.0.0.0:8444 ssl" \ -p 8002:8000 \ -p 8443:8443 \ -p 0.0.0.0:8001:8001 \ -p 127.0.0.1:8444:8444 \ kong:latest
|
使用kong
1
| $ curl -i http://localhost:8001/
|
konga安装和配置
初始化数据konga数据库,使用临时 Konga 容器运行迁移
1 2 3 4 5 6
| docker run --rm \ --network=kong-net \ pantsel/konga:latest \ -c prepare \ -a "postgres" \ -u "postgres://kong:kong@kong-database:5432/konga"
|
启动Konga
1 2 3 4 5 6 7 8
| docker run -d --name konga \ --network kong-net \ -e "TOKEN_SECRET=secret123" \ -e "DB_ADAPTER=postgres" \ -e "DB_URI=postgres://kong:kong@kong-database:5432/konga" \ -e "NODE_ENV=development" \ -p 1337:1337 \ pantsel/konga
|
使用Konga
访问http://localhost:1337 来访问Konga:
在Konga上配置
注册admin用户
初次使用Konga前,需要先注册一个Admin用户。
配置Kong连接
在Konga上,打开Connections,选择新建一个Kong连接
然
选择连接类型为key Auth,输入连接名称、Loopback API URL和API Key。
更多内容可以参考官方资料:https://docs.konghq.com