zoukankan      html  css  js  c++  java
  • Docker安装Kong API Gateway并使用

    我最新最全的文章都在 南瓜慢说 www.pkslow.com ,文章更新也只在官网,欢迎大家来喝茶~~

    1 简介

    Kong不是一个简单的产品,本文讲的Kong主要指的是Kong API Gateway,即API网关。这次主要是简单体验一把,通过Docker安装,然后使用它的Route功能。

    2 安装

    创建Docker的Network:

    # 创建
    $ docker network create kong-net
    # 检查
    $ docker network list
    

    Kong可以使用无数据库模式,为了窥探一下它的配置,我们还是使用数据库,启动如下:

    $ docker run -itd --network=kong-net 
        --name kong-database 
        -e POSTGRES_DB=kong 
        -e POSTGRES_USER=pkslow 
        -e POSTGRES_PASSWORD=pkslow-kong 
        -p 5432:5432 
        postgres:13
    

    接着进行migrations操作,可以理解为是准备数据库:

    $ docker run --rm 
         --network=kong-net 
         -e "KONG_DATABASE=postgres" 
         -e "KONG_PG_HOST=kong-database" 
         -e "KONG_PG_USER=pkslow" 
         -e "KONG_PG_PASSWORD=pkslow-kong" 
         kong:2.5.0-ubuntu kong migrations bootstrap
    

    准备就绪后,就可以启动Kong了:

    $ docker run -itd --name kong 
         --network=kong-net 
         -e "KONG_DATABASE=postgres" 
         -e "KONG_PG_HOST=kong-database" 
         -e "KONG_PG_USER=pkslow" 
         -e "KONG_PG_PASSWORD=pkslow-kong" 
         -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 127.0.0.1:8001:8001 
         -p 127.0.0.1:8444:8444 
         kong:2.5.0-ubuntu
    

    它的Admin端口为8001,通过下面命令验证:

    $ curl -i http://localhost:8001/
    

    3 测试Route功能

    先创建一个服务,可以理解为注册一个服务,服务名为pkslow,地址为( www.pkslow.com ):

    $ curl -X POST --url http://localhost:8001/services/ --data 'name=pkslow' --data 'url=https://www.pkslow.com'
    

    创建路由规则,路径为/pkslow,对应的服务为pkslow:

    $ curl -X POST --url http://localhost:8001/services/pkslow/routes --data 'paths[]=/pkslow'
    

    这样,当我们访问路径/pkslow时,其它访问的就是服务pkslow的内容。

    访问测试,注意端口为8000了:

    $ curl -i -X GET --url http://localhost:8000/pkslow
    

    到此,我们就成功安装并使用了Kong Gateway的Route功能了。

    4 总结

    Kong的强大在于它可以安装许多的插件来实现各种功能,如验证、限流、缓存等。它的强大,等你来挖掘。

  • 相关阅读:
    Java基础类库
    Java工具类之浮点精确计算
    liunx安装telnet
    java代码中执行liunx命令
    Java 7 新的 try-with-resources 语句,自动资源释放
    mysql中单表多timestamp设置default问题
    Linux top命令的用法详细详解
    JVM调优之jstack找出最耗cpu的线程并定位代码
    每天一个liunx命令10之nohup和xargs
    每天一个liunx命令10之nohup和xargs
  • 原文地址:https://www.cnblogs.com/larrydpk/p/15097070.html
Copyright © 2011-2022 走看看