Docker安装部署kong和konga,并且配置konga页面
ps:docker 安装kong时,postgres的版本最好使用9.6,版本过高过低可能会出现问题
-
网络配置
1 docker network create kong-net
-
安装启动postgres容器
1 docker run -d --name kong-database \ 2 --network=kong-net \ 3 -p 5432:5432 \ 4 -e "POSTGRES_USER=kong" \ 5 -e "POSTGRES_DB=kong" \ 6 -e "POSTGRES_PASSWORD=kong" \ 7 postgres:9.6
-
安装配置kong
-
初始化kong数据库
1 docker run --rm \ 2 --network=kong-net \ 3 -e "KONG_DATABASE=postgres" \ 4 -e "KONG_PG_HOST=kong-database" \ 5 -e "KONG_PG_USER=kong" \ 6 -e "KONG_PG_PASSWORD=kong" \ 7 -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \ 8 kong:latest kong migrations bootstrap
-
安装启动kong容器
1 docker run -d --name kong \ 2 --network=kong-net \ 3 -e "KONG_DATABASE=postgres" \ 4 -e "KONG_PG_HOST=kong-database" \ 5 -e "KONG_PG_USER=kong" \ 6 -e "KONG_PG_PASSWORD=kong" \ 7 -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \ 8 -e "KONG_PROXY_ACCESS_LOG=/dev/stdout" \ 9 -e "KONG_ADMIN_ACCESS_LOG=/dev/stdout" \ 10 -e "KONG_PROXY_ERROR_LOG=/dev/stderr" \ 11 -e "KONG_ADMIN_ERROR_LOG=/dev/stderr" \ 12 -e "KONG_ADMIN_LISTEN=0.0.0.0:8001, 0.0.0.0:8444 ssl" \ 13 -p 8000:8000 \ 14 -p 8443:8443 \ 15 -p 8001:8001 \ 16 -p 8444:8444 \ 17 kong:latest
-
-
安装配置konga
- 创建konga数据库
1 # 进入postgres的docker容器 2 docker exec -it kong-database /bin/bash 3 # 进入postgres数据库命令行操作,输入密码konga 4 psql -U kong -W 5 # 创建用户 6 create user konga with password 'konga'; 7 # 创建数据库 8 create database konga owner konga; 9 # 授权 10 grant all privileges on database konga to konga;
- 初始化konga数据库(红色部分为上一步中创建的konga数据库的用户,密码和数据库实例,蓝色部分为postgres的IP地址)
1 docker run --rm pantsel/konga:latest \ 2 -c prepare \ 3 -a postgres \ 4 -u postgresql://konga:konga@192.168.146.41:5432/konga
- 启动konga容器(蓝色部分为postgres的IP地址)
1 docker run -d --name konga \ 2 --network=kong-net \ 3 -e "DB_ADAPTER=postgres" \ 4 -e "DB_HOST=192.168.146.41" \ 5 -e "DB_PORT=5432" \ 6 -e "DB_USER=konga" \ 7 -e "DB_PASSWORD=konga" \ 8 -e "DB_DATABASE=konga" \ 9 -e "DB_PG_SCHEMA=public"\ 10 -e "NODE_ENV=production" \ 11 -p 1337:1337 \ 12 pantsel/konga
- 创建konga数据库
-
konga可视界面配置服务和路由
- 页面登录(ip换成docker所在的服务器ip,或者容器对外暴露的ip),连接kong,选择CONNECTIONS,点击NEW CONNECTION,输入kong的url,确认后,点击ACTIVATE即可连接,http://192.168.146.41:1337/
-
首先选中左侧SERVICES后点击图中绿色按钮ADD NEW SERVICE,配置如下几个参数,配置后点击提交
-
-
点击刚刚创建的服务的名称,可以修改刚刚设置的配置,选择下图红框的Routes,配置服务的路由,点击提交,至此简单配置完成,按照
(规则为 http://网关ip:8000/路由配置Paths的值/controller的拦截路径) 可访问启动的服务