kong网关安装及konga安装

news/2024/11/28 19:46:52/

一、kong安装

安装机器地址:192.168.19.50

1、自定义一个docker网络

[root@min ~]# docker network create kong-net
a9bde4e7d16e4838992000cd5612476b238f7a88f95a07c994a9f57be7f64c10

查看网络是否创建成功

[root@min ~]# docker network ls
NETWORK ID     NAME       DRIVER    SCOPE
e30d2ad88f06   bridge     bridge    local
f5707c0bc33a   host       host      local
a9bde4e7d16e   kong-net   bridge    local
469a9f965ac7   none       null      local

可以看到kong-net网络已经创建成功

2、启动PostgreSQL容器

 docker run -d --name kong-database \--network=kong-net \-p 5432:5432 \-e "POSTGRES_USER=kong" \-e "POSTGRES_DB=kong" \-e "POSTGRES_PASSWORD=kongpass" \postgres:13

3、准备kong所需要的数据

docker run --rm --network=kong-net \-e "KONG_DATABASE=postgres" \-e "KONG_PG_HOST=kong-database" \-e "KONG_PG_PASSWORD=kongpass" \-e "KONG_PASSWORD=test" \
kong/kong-gateway:3.3.0.0 kong migrations bootstrap

初始化完成后,数据库会新增一些表:

4、 启动Kong容器

docker run -d --name kong-gateway \--network=kong-net \-e "KONG_DATABASE=postgres" \-e "KONG_PG_HOST=kong-database" \-e "KONG_PG_USER=kong" \-e "KONG_PG_PASSWORD=kongpass" \-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" \-e "KONG_ADMIN_GUI_URL=http://localhost:8002" \-e KONG_LICENSE_DATA \-p 8000:8000 \-p 8443:8443 \-p 8001:8001 \-p 8444:8444 \-p 8002:8002 \-p 8445:8445 \-p 8003:8003 \-p 8004:8004 \kong/kong-gateway:3.3.0.0

5、验证是否安装成功

curl -i -X GET --url http://localhost:8001/services

通过上面可以看到,可以看出来kong已经安装成功

由于开源版本的kong manage不可以使用,所以我们需要安装konga来进行界面化管理,konga的安装如下:

二、konga安装 

1、数据库准备

konga支持MySQL、MongoDB、PostgresSQL三种数据库,这里我们选用mysql数据作为konga的持久化层,使用如下指令启动一个mysql数据库

docker run --name mysql5.7  -p 3306:3306 -e  MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:5.7

2、安装konga(虚拟机地址:192.168.19.50)

2.1 执行初始化数据库操作,建表操作:

docker run --rm pantsel/konga:latest -c prepare -a mysql -u mysql://root:my-secret-pw@192.168.19.50:3306/konga_databas

创建完成后:

 2.2 真正执行安装

 docker run -d -p 1337:1337 --network=kong-net -e "DB_ADAPTER=mysql"  -e "DB_HOST=192.168.19.50" -e "DB_PORT=3306" -e "DB_USER=root"  -e "DB_PASSWORD=my-secret-pw" -e "DB_DATABASE=konga_databas" -e "NODE_ENV=production" --name konga pantsel/konga

2.3 在外部主机浏览器上输入

192.168.19.50:1337

填写好信息,

userName: kong-test

email: kong@kong.com

password:1234567

点击CREATE ADMIN 按钮,跳转到登录页面:

, 输入刚刚的注册的信息进行登录,然后填好信息进行管理

三、测试kong的网关转发能力 

1、创建service,使用postman创建一个kong_service

2、基于刚刚创建好的kong_service来创建一个route

 

3、准备一个springboot项目,项目的请求路径如下:

 

4、将jar包上传到192.168.19.50这台服务器上,然后启动

nohup java -jar kong-demo-0.0.1-SNAPSHOT.jar --server.port=8080

5、在外部主机的浏览器上进行访问

192.168.19.50:8000/kong_service/hello

 192.168.19.50:8000/kong_service/hello/sub

 至此,我们已经成功安装了kong,并且成功创建了一个service及route,最后测试kong 能够成功进行请求转发


http://www.ppmy.cn/news/105069.html

相关文章

【计算机网络详解】——应用层(学习笔记)

📖 前言:应用层是计算机网络体系结构的最顶层,是设计和建立计算机网络的最终目的,也是计算机网络中发展最快的部分。在本文中,我们以一些经典的网络应用为例来学习有关网络应用的原理、协议和实现方面的知识。 目录 &a…

Vue实例

1. 自定义元素 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-wid…

基于FPGA:运动目标检测(包围盒仿真工程,及一些调试问题)

目录 前言一、安装器件库二、仿真工程操作1、进入文件列表2、找到bounding_box_locate.vt&#xff0c;双击打开文件3、修改路径4、路径设置5、切换回“Hierarchy”&#xff0c;即工程界面6、运行仿真7、查看波形 重点&#xff1a;调试问题三、仿真代码1、仿真顶层文件2、绘制包…

什么是Redis

概述 什么是Redis Redis(Remote Dictionary Server) 是一个使用 C 语言编写的&#xff0c;开源的&#xff08;BSD许可&#xff09;高性能非关系型&#xff08;NoSQL&#xff09;的键值对数据库。 Redis 可以存储键和五种不同类型的值之间的映射。键的类型只能为字符串&#xff…

Linux输入输出重定向

目录 Linux输入输出重定向 Linux中的默认设备 输入输出重定向定义 输入输出重定向操作符 实用形式 标准输入、标准输出、标准错误 输出重定向案例 案例1 --- 输出重定向&#xff08;覆盖&#xff09; 案例2 --- 输出重定向&#xff08;追加&#xff09; 案例3 --- 错误…

ifconfig工具与驱动交互解析(ioctl)

Linux ifconfig&#xff08;network interfaces configuring&#xff09; Linux ifconfig命令用于显示或设置网络设备。ifconfig可设置网络设备的状态&#xff0c;或是显示目前的设置。同netstat一样&#xff0c;ifconfig源码也位于net-tools中。源码位于net-tools工具包中&am…

《消息队列高手课》课程笔记(七)

如何使用异步设计提升系统性能&#xff1f; 异步设计如何提升系统性能&#xff1f; 假设我们要实现一个转账的微服务 Transfer(accountFrom, accountTo, amount)&#xff0c;这个服务有三个参数&#xff1a;分别是转出账户、转入账户和转账金额。 这个例子的实现过程中&…

Vue登录界面精美模板分享

文章目录 &#x1f412;个人主页&#x1f3c5;Vue项目常用组件模板仓库&#x1f4d6;前言&#xff1a;&#x1f380;源码如下&#xff1a; &#x1f412;个人主页 &#x1f3c5;Vue项目常用组件模板仓库 &#x1f4d6;前言&#xff1a; 本篇博客主要提供vue组件之登陆组件源码…