Docker安装Kong API Gateway并使用
source link: https://www.pkslow.com/archives/kong-docker
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
泉眼无声惜细流,树阴照水爱晴柔。
Kong不是一个简单的产品,本文讲的Kong主要指的是Kong API Gateway,即API网关。这次主要是简单体验一把,通过Docker安装,然后使用它的Route功能。
创建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功能了。
Kong的强大在于它可以安装许多的插件来实现各种功能,如验证、限流、缓存等。它的强大,等你来挖掘。
References:
欢迎关注微信公众号<南瓜慢说>,将持续为你更新...
推荐阅读:
如何制定切实可行的计划并好好执行
容器技术(Docker-Kubernetes)
SpringBoot-Cloud相关
Https专题
- 本文作者: 南瓜慢说
- 本文链接: https://www.pkslow.com/archives/kong-docker
- 版权声明: 本博客所有文章除特别声明外,不可转载!
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK