乐趣区

关于java:Docker安装Kong-API-Gateway并使用

我最新最全的文章都在 南瓜慢说 www.pkslow.com,文章更新也只在官网,欢送大家来喝茶~~

1 简介

Kong 不是一个简略的产品,本文讲的 Kong 次要指的是 Kong API Gateway,即 API 网关。这次次要是简略体验一把,通过 Docker 装置,而后应用它的 Route 性能。

2 装置

创立 Docker 的 Network:

# 创立
$ docker network create kong-net
# 查看
$ docker network list

Kong 能够应用无数据库模式,为了窥探一下它的配置,咱们还是应用数据库,启动如下:

$ docker run -itd --network=kong-net \
    --name kong-database \
    -e POSTGRES_DB=kong \
    -e POSTGRES_USER=pkslow \
    -e POSTGRES_PASSWORD=pkslow-kong \
    -p 5432:5432 \
    postgres:13

接着进行 migrations 操作,能够了解为是筹备数据库:

$ docker run --rm \
     --network=kong-net \
     -e "KONG_DATABASE=postgres" \
     -e "KONG_PG_HOST=kong-database" \
     -e "KONG_PG_USER=pkslow" \
     -e "KONG_PG_PASSWORD=pkslow-kong" \
     kong:2.5.0-ubuntu kong migrations bootstrap

准备就绪后,就能够启动 Kong 了:

$ docker run -itd --name kong \
     --network=kong-net \
     -e "KONG_DATABASE=postgres" \
     -e "KONG_PG_HOST=kong-database" \
     -e "KONG_PG_USER=pkslow" \
     -e "KONG_PG_PASSWORD=pkslow-kong" \
     -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 8000:8000 \
     -p 8443:8443 \
     -p 127.0.0.1:8001:8001 \
     -p 127.0.0.1:8444:8444 \
     kong:2.5.0-ubuntu

它的 Admin 端口为 8001,通过上面命令验证:

$ curl -i http://localhost:8001/

3 测试 Route 性能

先创立一个服务,能够了解为注册一个服务,服务名为 pkslow,地址为 (www.pkslow.com):

$ curl -X POST --url http://localhost:8001/services/ --data 'name=pkslow' --data 'url=https://www.pkslow.com'

创立路由规定,门路为 /pkslow,对应的服务为 pkslow:

$ curl -X POST --url http://localhost:8001/services/pkslow/routes --data 'paths[]=/pkslow'

这样,当咱们拜访门路 /pkslow 时,其它拜访的就是服务 pkslow 的内容。

拜访测试,留神端口为 8000 了:

$ curl -i -X GET --url http://localhost:8000/pkslow

到此,咱们就胜利装置并应用了 Kong Gateway 的 Route 性能了。

4 总结

Kong 的弱小在于它能够装置许多的插件来实现各种性能,如验证、限流、缓存等。它的弱小,等你来开掘。

退出移动版