简介
Kong是一款基于OpenResty(Nginx + Lua模块)编写的高可用、易扩展的,由Mashape公司开源的API Gateway项目。Kong是基于NGINX和Apache Cassandra或PostgreSQL构建的,能提供易于使用的RESTful API来操作和配置API管理系统,所以它可以水平扩展多个Kong服务器,通过前置的负载均衡配置把请求均匀地分发到各个Server,来应对大批量的网络请求。
详情查看:https://blog.csdn.net/garyond/article/details/81318772
1.安装postgres数据库
docker run -d --name kong-database \ -v /data/postgres/data:/var/lib/postgresql/data \ -p 5432 : 5432 \ -e "POSTGRES_USER=kong" \ -e "POSTGRES_DB=kong" \ -e "POSTGRES_PASSWORD=kong" \ postgres: 9.6 |
2.数据库初始化
docker run --rm \ --link=kong-database \ -e "KONG_DATABASE=postgres" \ -e "KONG_PG_HOST=kong-database" \ -e "KONG_PG_PASSWORD=kong" \ -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \ kong:latest kong migrations bootstrap |
3.启动kong网关
docker run -d --name kong \ --link=kong-database \ -e "KONG_DATABASE=postgres" \ -e "KONG_PG_HOST=kong-database" \ -e "KONG_PG_PASSWORD=kong" \ -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 8008 : 8000 \ -p 8443 : 8443 \ -p 8001 : 8001 \ -p 8444 : 8444 \ kong:latest |
至此,kong网关已搭建完毕。访问8001端口查看相关信息。
接下来搭建kong网关 web控制台 konga
4.konga搭建
docker run -d -p 1337 : 1337 \ --link=kong \ --name konga \ -e "TOKEN_SECRET=123456" \ pantsel/konga |
访问 1337端口初始化配置即可操作
5.postgre管理
docker run --rm -p 8009 : 80 \ --link kong-database \ -e "PGADMIN_DEFAULT_EMAIL=admin@qq.com" \ -e "PGADMIN_DEFAULT_PASSWORD=123456" \ -d dpage/pgadmin4 |