Kong入门及docker安装
admin
2023-03-07 07:02:49
0

一.Kong介绍

Kong(https://github.com/Kong/kong) 是一个云原生,高效,可扩展的分布式 API 网关。 自 2015 年在 github 开源后,广泛受到关注,目前已收获 1.9w+ 的 star,其核心价值在于高性能和可扩展性。


Kong入门及docker安装

二.安装前准备

  • 安装好docker稳定版本
  • 会docker 的基本使用
  • 了解kong概念和使用(文档地址: https://getkong.org/docs/)
概念术语
  • upstream: 是对上游服务器的抽象;
  • target: 代表了一个物理服务,是 ip + port 的抽象;
  • service: 是抽象层面的服务,他可以直接映射到一个物理服务(host 指向 ip + port),也可以指向一个 upstream 来做到负载均衡;
  • route: 是路由的抽象,他负责将实际的 request 映射到 service。
    默认情况下,KONG监听的端口为
  • 8000: 此端口是KONG用来监听来自客户端传入的HTTP请求,并将此请求转发到上有服务器;
  • 8443: 此端口是KONG用来监听来自客户端传入的HTTP请求的。它跟8000端口的功能类似,但是它只是用来监听HTTP请求的,没有转发功能。可以通过修改配置文件来禁止它;
  • 8001: Admin API,通过此端口,管理者可以对KONG的监听服务进行配置;
  • 8444: 通过此端口,管理者可以对HTTP请求进行监控.

    三.Kong安装

    这里以0.13.x 以上的版本为例子,废弃了API实体对象的使用。
    1.创建docker网络

    docker network create kong-net

    2.安装数据库,kong支持 postgres( postgres9.5以上)和Apache Cassandra
    创建启动数据库,这里以postgres9.5作为数据库来存储数据,如下:

    $ docker run -d --name kong-database \
    --network=kong-net \
    -p 5432:5432 \
    -e "POSTGRES_USER=kong" \
    -e "POSTGRES_DB=kong" \
    postgres:9.6

    3.数据库准备,初始化Kong数据

    docker run --rm \
    --network=kong-net \
    -e "KONG_DATABASE=postgres" \
    -e "KONG_PG_HOST=kong-database" \
    kong:0.14.1 kong migrations up

    4.启动kong

    docker run -d --name kong \
    --network=kong-net \
    -e "KONG_DATABASE=postgres" \
    -e "KONG_PG_HOST=kong-database" \
    -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 \
    -p 8444:8444 \
    kong:0.14.1

    5.查看kong是否正在运行。

    $ curl -i http://localhost:8001
    然后可以通过Restful Admin API 管理kong,参考地址:https://docs.konghq.com/0.14.x/admin-api/


四.启动Kong Dashboard

官方推出了dashboard来管理Kong,界面清爽,使用方便,我们接着往下看。
1.创建并运行Kong dashboard容器

docker run -d \
--network=kong-net \
--link kong:kong -p 8008:8080 pgbi/kong-dashboard start \
--kong-url http://kong:8001 \
--basic-auth kong=kong

2.然后访问 http://192.168.33.10:8008,

  • 这里192.168.33.10是我的虚拟机IP
  • 登录账号为kong,密码为kong,如下图:

Kong入门及docker安装

五.启动postgre admin 4

1.创建并运行postgre admin 4容器

docker run -d -p 8009:80 \
--network=kong-net \
--link kong-database:kong-database \
-e "PGADMIN_DEFAULT_EMAIL=admin@admin.com" \
-e "PGADMIN_DEFAULT_PASSWORD=admin@admin.com" \
-d dpage/pgadmin4

2.然后访问 http://192.168.33.10:8009

  • 登录账号为admin@admin.com,密码为admin@admin.com
  • 创建server,如下图:
    Kong入门及docker安装

Kong入门及docker安装


六.参考文档

1.kong官方文档:https://getkong.org/docs/
2.docker安装kong:https://blog.csdn.net/freewebsys/article/details/80428830
3.选择Kong作为你的API网关:https://www.itcodemonkey.com/article/5980.html

相关内容

热门资讯

新价格项目落地,让医疗真创新更... “让瘫痪的人能动、心衰末期的人能活、万里之外能手术”,这些看似奇迹的变化,背后藏着一个关键支撑—近三...
苹果宣布在印度扩大三项环保举措... 【CNMO科技消息】近日,苹果宣布扩大在印度的环保举措,共推出三个相关项目,覆盖清洁能源、塑料污染治...
华为在数字中国建设峰会:只有根... 作者:王聪彬 “根技术、落地”是华为在第九届数字中国建设峰会想要传递出的两个关键字。 “根技术”顾名...
凤凰女记者战地日记丨飞涨的物价... 【编者按】这是凤凰卫视驻伊朗记者李睿的战地日记。她身处德黑兰,既是战争的亲历者,也是观察者。在她的日...
特朗普:俄乌将实行为期3天的停... △特朗普(资料图)当地时间5月8日,美国总统特朗普在其社交媒体“真实社交”发文表示,在俄罗斯与乌克兰...
《星球大战》男主角发“特朗普躺... 据英国广播公司(BBC)5月8日报道,《星球大战》演员马克·哈米尔在社交平台发布一张AI生成的图片,...
产业园区招商政府委托媒介选型指... 导语:产业园区招商需兼顾资源整合效率与项目落地精准度,尤其在互联网招商模式下,平台流量、技术团队与资...
“无废城市”建设 | 为新材料... 4月26日,在常山生态工业园区的利安隆科润(浙江)新材料有限公司实验室里,企业品控部负责人、科技副总...
既能防晒又能听歌,还自带AI小... 春夏出门运动,你是不是也常常纠结:到底是戴帽子防晒,还是戴耳机听歌?两个都戴上,耳朵被压得生疼,帽檐...
伊朗警告过往船只远离美军舰艇:... 据美国有线电视新闻网(CNN)5月8日报道,一段录音显示,美伊在霍尔木兹海峡发生冲突后,伊朗革命卫队...