Docker安装Kong
有关如何在Docker中使用Kong的详细信息,可以在托管该映像的DockerHub存储库中找到:kong。我们还有一个具有内置编排和可伸缩性的Docker Compose模板。
使用数据库
这是一个简单的示例,显示了如何将Kong容器连接到Cassandra或PostgreSQL容器。
1.创建一个Docker网络
您将需要创建一个自定义网络,以使容器能够发现彼此并进行通信。在此示例中kong-net为网络名称,您可以使用任何名称。
$ docker network create kong-net
2.启动你的数据库
如果您想使用Cassandra容器:
$ docker run -d --name kong-database \
--network=kong-net \
-p 9042:9042 \
cassandra:3
如果您想使用PostgreSQL容器:
$ 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
3.准备数据
使用临时Kong容器运行迁移:
$ docker run --rm \
--network=kong-net \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=kong-database" \
-e "KONG_PG_PASSWORD=kong" \ 数据库密码
-e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \
kong:latest kong migrations bootstrap
在上面的示例中,同时配置了Cassandra和PostgreSQL,但是您应该KONG_DATABASE使用cassandra或更新环境变量 postgres。
Kong <0.15的注意事项:Kong版本低于0.15(最高0.14)时,请使用up子命令代替bootstrap。还要注意,Kong <0.15时,永远不要同时运行迁移;一次只能有一个Kong节点执行迁移。对于0.15、1.0及更高版本,此限制被取消。
4.开始Kong
运行迁移并准备好数据库后,启动一个Kong容器,该容器将连接到数据库容器,就像临时迁移容器一样:
$ docker run -d --name kong \
--network=kong-net \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=kong-database" \
-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 8000:8000 \
-p 8443:8443 \
-p 8001:8001 \ --如果增加IP,则只能指定IP访问
-p 8444:8444 \ --如果增加IP,则只能指定IP访问
kong:latest
5.使用Kong
Kong正在运行:
$ curl -i http://localhost:8001/
6.使用Konga
拉取Konga镜像:
docker pull pantsel/konga:latest
7.运行Konga
创建Konga容器:
docker run -p 1337:1337 \
--network kong-net \
--name konga \
-e "NODE_ENV=production" \
-e "DB_ADAPTER=postgres" \
-e "DB_URI=postgresql://kong:kong@172.18.0.1:5432/konga" \
pantsel/konga
注:172.18.0.1为安装Postgresql容器的IP
5分钟的快速入门快速学习如何使用Kong 。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 趁着过年的时候手搓了一个低代码框架
· 推荐一个DeepSeek 大模型的免费 API 项目!兼容OpenAI接口!
· 用 C# 插值字符串处理器写一个 sscanf