服务器部署Kong 和 Konga!终于有自己的网关服务了!
创作时间:
作者:
@小白创作中心
服务器部署Kong 和 Konga!终于有自己的网关服务了!
引用
1
来源
1.
https://cloud.tencent.com/developer/article/2505997
Kong是一个强大的开源API网关,而Konga是它的可视化管理工具。本文将详细介绍如何使用Docker部署Kong和Konga,并通过Konga管理Kong。
前言
最近在想怎么将一个接口给外部提供服务,并且可以根据和对放的关系,设置不同的期限或者服务大小?并且有友好的可视化页面!这让我了解到了API网关,所以我开始研究Kong和Konga的使用。
实际上我最开始研究的apisix,但是部署了好久因为etcd不支持http无法连接成功放弃了!
Kong是一个强大的开源API网关,而Konga是它的一个可视化管理工具。由于Kong使用postgres作为数据存储,所以我们需要三个镜像。
下面是快速搭建Kong和Konga的完整流程,希望能帮助到有类似需求的开发者。
部署可能用到的命令
# 启动
docker-compose up -d
# 关闭
docker-compose stop
# 查看日志
docker logs xxxx
# 查看容器列表
docker ps -a
部署
1. 创建docker-compose.yml文件
首先,在你的工作目录中创建一个docker-compose.yml文件,内容如下:
version: '3.2'
services:
postgres:
image: postgres:9.6
container_name: kong-database
environment:
POSTGRES_USER: kong
POSTGRES_PASSWORD: kong
POSTGRES_DB: kong
volumes:
- postgres_data:/var/lib/postgresql/data
networks:
- kong-net
restart: unless-stopped
kong:
image: kong:2.8.1
container_name: kong
environment:
KONG_DATABASE: postgres
KONG_PG_HOST: postgres
KONG_PG_USER: kong
KONG_PG_PASSWORD: kong
KONG_PG_DATABASE: kong
KONG_PROXY_ACCESS_LOG: /dev/stdout
KONG_ADMIN_ACCESS_LOG: /dev/stdout
KONG_PROXY_ERROR_LOG: /dev/stderr
KONG_ADMIN_ERROR_LOG: /dev/stderr
KONG_ADMIN_LISTEN: 0.0.0.0:8001
KONG_ADMIN_GUI_URL: http://localhost:8002
depends_on:
- postgres
ports:
- "8000:8000"
- "8001:8001"
- "8002:8002"
- "8443:8443"
- "8444:8444"
networks:
- kong-net
restart: unless-stopped
konga:
image: pantsel/konga:0.14.9
container_name: konga
environment:
TOKEN_SECRET: konga-token-secret
DB_ADAPTER: postgres
DB_HOST: postgres
DB_USER: kong
DB_PASSWORD: kong
DB_DATABASE: kong
NODE_ENV: development # 第一次启动时设置为 development
depends_on:
- kong
ports:
- "1337:1337"
networks:
- kong-net
command: kong migrations bootstrap
restart: unless-stopped
networks:
kong-net:
driver: bridge
volumes:
postgres_data:
driver: local
注意:
konga的NODE_ENV第一次运行时要设置为development,因为生产环境默认是不会自动创建需要的表的。这是为了防止在生产环境破坏现有数据库。
对应的错误:
'Details: error: relation "public.konga_users" does not exist\n'
2. 启动服务
在包含docker-compose.yml文件的目录中运行以下命令:
docker-compose up -d
3. 初始化Kong数据库
这部分是自动完成的。记得创建成功后修改NODE_ENV为product,在重新启动。
4. 访问Konga并完成设置
打开浏览器,访问http://localhost:1337。
首次访问时,Konga会提示你创建一个管理员账户。
登录后,点击Connections->New Connection,配置Kong的连接信息:
- Kong Admin URL: http://kong:8001
- Name: 任意名称(如admin)。
- 点击Connect,Konga将连接到Kong。
Connect Page
Connect Page
5. 验证安装
连接之后看到这个页面说明安装成功了!
连接成功
结尾
今天的分享就这戏了,希望这篇文章能帮助大家快速上手Kong和Konga!
如果有任何问题或建议,欢迎随时交流讨论。感谢大家的阅读,我们下篇文章再见!
热门推荐
企业如何构建碳排放监测系统?
10万公里需要换正时链条吗?维修工:出现这两个现象再换也不迟
太阳可能有一个伴星,周期2600万年,每次靠近都会引发物种灭绝
低血糖的诊断标准是什么
如果恐龙复活:它们能在现代社会生存吗?
如何查询某个职业是否在国家职业资格证书目录中?
警惕洋奶粉从非法渠道进口
个人社保编号是什么?
房产税的缴纳规则是什么?
《狂飙》:高启强被困婚姻,高启盛出手相助,让婚姻坠落深渊。
微利时代,鸡蛋产业如何稳健前行?
白茶的八大内含物质:揭秘老白茶的独特风味与健康功效
签订合同后当场撕毁合同的行为怎么认定?法院依法作出判决……
帮助孩子提升学习成绩的有效方法与家长支持的重要性
附判决 | 用户生成奥特曼侵权图片,AI平台要担责?杭州互联网法院判决解析来了!
美国国歌歌词中英对照
如何评估医疗行业未来发展趋势的潜力?
对鼻炎最好的运动
共同一作和二作有啥区别(共同一作含金量如何)
考研英语和四六级的词汇量要求一样吗?
设施农用地的办理手续有哪些
剪纸艺术:在创作中传递情感与爱的温暖体验
运动后的肌肉酸痛?姜黄素或许能帮你!
厦门大学附属厦门眼科中心:如何预防黄斑变性?
人工智能时代,如何打造网络安全“新范式”?
因果效应分析:直接效应、自然直接效应与自然间接效应详解
被人威胁泄露户籍信息怎么办?这份应对指南请收好
阳明学荐书|王阳明心学入门书籍: 《王阳明》
大模型微调新突破!23个最新创新方案,全面提升模型性能!
员工工资条模板的组成部分有哪些?