docker安装kong

本次安装使用的是PostgreSQL,本次安装分为docker安装和docker-compose安装.

1.docker安装

serverversion
postgresv13
kong/kong-gatewayv3.5.0.2
1.1准备数据库

创建自定义Docker网络以允许容器发现彼此并进行通信

docker network create kong-net

网络命名可以自定义

启动postgres容器

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_DB:将这些值设置为kong。这是 Kong Gateway 期望的默认值
#POSTGRES_PASSWORD:设置数据库密码为任意字符串。

准备kong数据库

docker run --rm --network=kong-net \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=kong-database" \
-e "KONG_PG_PASSWORD=kongpass" \
-e "KONG_PASSWORD=test" \
kong/kong-gateway:3.5.0.2 kong migrations bootstrap
#KONG_DATABASE:指定Kong正在使用的数据库类型。
#KONG_PG_HOSTkong-net:上一步中通过网络通信的 Postgres Docker 容器的名称 。
#KONG_PG_PASSWORD:您在上一步中启动 Postgres 容器时设置的密码。
#KONG_PASSWORD(仅限企业):Kong Gateway 管理员超级用户的默认密码。
#{IMAGE-NAME:TAG} kong migrations bootstrap:按顺序,这是 Kong 网关容器名称和标签,后面是 Kong 准备 Postgres 数据库的命令。
1.2 启动kong网关

提示: 默认会覆盖admin_listen设置以侦听来自任何来源的请求,切记不要直接暴露到互联网中,如果需要admin_listen公开到互联网可以通过身份验证确保安全

docker run -d --name kong-gateway \
--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_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" \
-e "KONG_ADMIN_GUI_URL=http://localhost:8002" \
-e KONG_LICENSE_DATA \
-p 8000:8000 \
-p 8443:8443 \
-p 8001:8001 \
-p 8444:8444 \
-p 8002:8002 \
-p 8445:8445 \
-p 8003:8003 \
-p 8004:8004 \
kong/kong-gateway:3.5.0.2
#--name和--network:要创建的容器的名称及其通信的 Docker 网络。
#KONG_DATABASE:指定Kong正在使用的数据库类型。
#KONG_PG_HOST:通过网络进行通信的 Postgres Docker 容器的名称 kong-net。
#KONG_PG_USER和KONG_PG_PASSWORD:Postgres 用户名和密码。Kong Gateway 需要登录信息来将配置数据存储在KONG_PG_HOST数据库中。
#所有_LOG 参数:设置日志输出的文件路径,或使用示例中的值将消息和错误打印到stdout和stderr。
#KONG_ADMIN_LISTEN:Kong Admin API 侦听请求的端口。
#KONG_ADMIN_GUI_URL:访问 Kong Manager 的 URL,前面带有协议(例如http://)。
#KONG_LICENSE_DATA:(仅限企业)如果您有许可证文件并将其保存为环境变量,则此参数将从您的环境中提取许可证。
1.3 验证
 curl -i -X GET --url http://localhost:8001/services

会收到一个200的状态吗

http://localhost:8002
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值