• ApiSix网关环境搭建及简单使用(Windows)


    安装 apisix

    1. 安装 docker-desktop

    推荐文章:非常详细的描述了安装过程以及出现问题后的处理办法https://docker.easydoc.net/doc/81170005/cCewZWoN/lTKfePfP

    2. 启动 docker

    • 国内镜像加速
    "registry-mirrors": [
        "https://docker.mirrors.ustc.edu.cn",
        "https://registry.docker-cn.com",
        "http://hub-mirror.c.163.com",
        "https://mirror.ccs.tencentyun.com",
        "https://ung2thfc.mirror.aliyuncs.com"
      ]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    3.安装apisix

    官方文档:https://apisix.apache.org/zh/docs/apisix/getting-started/

    windows 下安装只需要执行这两步即可(注意第二条命令是需要在 apisix-docker/example 目录下执行

    git clone https://github.com/apache/apisix-docker.git
    
    docker-compose -p docker-apisix up -d
    
    • 1
    • 2
    • 3

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LnBfPC7V-1666871756325)(https://p1-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/03630052e9ff40ea8b60aa6b915ea1cb~tplv-k3u1fbpfcp-watermark.image?)]

    不清楚是不是网络原因,我最终是执行了多次 docker-compose -p docker-apisix up -d 才最终安装成功

    成功后显示如下

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-n46LJuUH-1666871756327)(https://p6-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/c2a9b027aacf4ebb99ffd9ccdac7f0dd~tplv-k3u1fbpfcp-watermark.image?)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xyZ6Hs6Q-1666871756327)(https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/20eb81a7e9514af98fd340f0887d572d~tplv-k3u1fbpfcp-watermark.image?)]

    转发测试

    1.登录管理平台

    访问 localhost:9000 即可访问 apisix 的可视化管理平台

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vW0pauXj-1666871756328)(https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/557c69aec126461694309a67bbca07f6~tplv-k3u1fbpfcp-watermark.image?)]

    2.启动一个后端服务

    实现方式无所谓,例如我们在本机上暴露了一个java接口,localhost:8080/test

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MDkIgMX1-1666871756329)(https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/89b8915b8a844a60b73997126519188c~tplv-k3u1fbpfcp-watermark.image?)]

    3.创建一个上游

    Upstream 也称为上游,上游是对虚拟主机的抽象,即应用层服务或节点的抽象。

    上游的作用是按照配置规则对服务节点进行负载均衡,它的地址信息可以直接配置到路由或服务上。当多个路由或服务引用同一个上游时,可以通过创建上游对象,在路由或服务中使用上游的 ID 方式引用上游,减轻维护压力。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-u4qgOWia-1666871756329)(https://p1-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/87df3fb4d5384619a37d2525e21392d7~tplv-k3u1fbpfcp-watermark.image?)]
    主机名这里填写的是本机ip,填localhost会报502,有大佬可以给我解释下为啥

    4.创建路由

    Route 也称为路由,是 APISIX 中最基础和最核心的资源对象。

    APISIX 可以通过路由定义规则来匹配客户端请求,根据匹配结果加载并执行相应的插件,最后把请求转发给到指定的上游服务。路由中主要包含三部分内容:匹配规则、插件配置和上游信息。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-epOp8ZlT-1666871756330)(https://p6-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/1cb12be1278f47ffa482d5bfb80f72a1~tplv-k3u1fbpfcp-watermark.image?)]
    上游就选择我们刚创建的

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9UoHgpvr-1666871756331)(https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/a684a575cf0b4005bc7a452b691675ff~tplv-k3u1fbpfcp-watermark.image?)]
    插件就不选了,直接下一步

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vUZG49Jz-1666871756331)(https://p6-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/f67eb79e545a4773aa6f8df8d7db76d1~tplv-k3u1fbpfcp-watermark.image?)]

    5.测试

    然后我们根据apisix配置的网关端口号
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hD03EqEG-1666871756332)(https://p1-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/396c7c5a40504708ac512a7ae03f07d7~tplv-k3u1fbpfcp-watermark.image?)]
    访问 localhost:9080/test 转发成功

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YYuaYa9b-1666871756333)(https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/72f7e168848d466291848ee0bda018e1~tplv-k3u1fbpfcp-watermark.image?)]

  • 相关阅读:
    基于web的照片数码冲印网站
    CANFD数据记录仪在汽车电子上的具体应用
    自动控制原理8.3---相平面法
    七天入门node.js(03)
    IMX6ULL移植篇-uboot源码主要目录说明
    qt的类用c++表示
    Java ”框架 = 注解 + 反射 + 设计模式“ 之 注解详解
    乘风破浪,遇见未来新能源汽车(Electric Vehicle)之特斯拉提车必须知道的十个流程
    golang 使用 viper 加载配置文件 自动反序列化到结构
    uniapp使用技巧及例子
  • 原文地址:https://blog.csdn.net/wa123579/article/details/127559530