Kong和Konga

Kong和Konga攻坚

一、安装Kong 参考网址:在码头工人上安装孔网关 - v3.3.x |孔文档 (konghq.com)

1、创建自定义 Docker 网络以允许容器发现和 相互沟通:

docker network create kong-net

您可以根据需要将此网络命名为任何名称。我们使用 本指南中的示例。kong-net

2、启动一个 PostgreSQL 容器:

docker run -d --name kong-database \

--network=kong-net \

-p 5432:5432 \

-e "POSTGRES_USER=kong" \

-e "POSTGRES_DB=kong" \

-e "POSTGRES_PASSWORD=kongpass" \

postgres:13

  • POSTGRES_USER和 :将这些值设置为 。这是 孔网关所需的默认值。POSTGRES_DBkong
  • POSTGRES_PASSWORD:将数据库密码设置为任意字符串。

在此示例中,名为 Postgres 的容器可以 与网络上的任何容器通信。kong-databasekong-net

3、准备 Kong 数据库:

docker run --rm --network=kong-net \

-e "KONG_DATABASE=postgres" \

-e "KONG_PG_HOST=kong-database" \

-e "KONG_PG_PASSWORD=kongpass" \

kong:3.3.0 kong migrations bootstrap

哪里:

  • KONG_DATABASE: 指定 Kong 正在使用的数据库的类型。
  • KONG_PG_HOST: 上一步中通过网络进行通信的 Postgres Docker 容器的名称。kong-net
  • KONG_PG_PASSWORD: 在 上一步。
  • KONG_PASSWORD(仅限企业版):管理员的默认密码 金刚网关的超级用户。
  • {IMAGE-NAME:TAG} kong migrations bootstrap: 按顺序,这是 Kong 网关容器名称和标记,后跟 命令 Kong 准备 Postgres 数据库。

4、执行以下命令,使用金刚网关启动容器。

docker run -d --name kong-gateway \

--network=kong-net -u root\

-e "KONG_DATABASE=postgres" \

-e "KONG_PG_HOST=kong-database" \

-e "KONG_PG_USER=kong" \

-e "KONG_PG_PASSWORD=kongpass" \

-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 10.31.56.10:8001:8001 \

-p 10.31.56.10:8444:8444 \

kong:3.4.0

要使用的话把127.0.0.1改成自己电脑的ip地址

把密码改成自己的密码

哪里:

  • --name和:要创建的容器的名称, 以及它所通信的 Docker 网络。--network
  • KONG_DATABASE: 指定 Kong 正在使用的数据库的类型。
  • KONG_PG_HOST: 通过网络进行通信的 Postgres Docker 容器的名称。kong-net
  • KONG_PG_USER和KONG_PG_PASSWORD: Postgres 用户名和密码。港通需要登录信息 将配置数据存储在数据库中。KONG_PG_HOST
  • 所有_LOG参数:设置要输出到的日志的文件路径,或使用 将消息和错误打印到 和 的示例。stdoutstderr
  • KONG_ADMIN_LISTEN: Kong 管理员 API 侦听请求的端口。
  • KONG_ADMIN_GUI_URL: (仅限企业版)用于访问 Kong 管理器的 URL,前面有一个协议 (例如,)。http://
  • KONG_LICENSE_DATA:(仅限企业版)如果您有许可证文件并已保存 作为环境变量,此参数从您的环境中提取许可证。

5、验证您的安装:

使用管理 API 访问端点:/services

curl -i -X GET --url http://localhost:8001/services

您应该会收到一个状态代码。200

安装Konga

  1. docker run -p 1337:1337 --network=kong-net -e "KONG_DATABASE=postgres" -e "KONG_PG_HOST=kong-database" -e "KONG_PG_USER=kong" -e "KONG_PG_PASSWORD=kongpass" -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" -e "DB_DATABASE=konga" -e "KONGA_HOOK_TIMEOUT=120000" --name konga pantsel/konga:latest
  2. https://www.jianshu.com/p/7412ff422db6 解决 win10 hyper-v 保留端口占用问题
  3. 解决 Windows11 莫名端口占用,而又找不到占用应用的奇怪问题_windows端口被占用但查不到_现代的三流魔法使的博客-CSDN博客

Konga负载均衡配置

  1. https://www.cnblogs.com/weichenglan/p/15407952.html
  2. 创建一个WebApi项目发布
  3. 然后直接跟着上面的链接配置就行

第一步:descript

descript

descript

descript

target直接放本机地址和:要访问的地址就行。注意要先发布再配置

第二部:服务配置

descript

descript

第三部:路径配置

descript

descript

最后:

descript

descript

可以看到配置的多个接口都可以访问

如果是同一个方法不同地址也可以访问刷新后会改变:

descript

descript

黑白名单限流有问题无法限制!!!

posted @ 2024-06-05 09:58  北落师门、  阅读(55)  评论(0编辑  收藏  举报