新建docker-net
docker network create kong-net
部署db
docker run -d --name kong-database \
--network=kong-net \
-p 5432:5432 \
-e "POSTGRES_USER=kong" \
-e "POSTGRES_DB=kong" \
-e "POSTGRES_PASSWORD=kong" \
postgres:11
创建db
docker run --rm --network=kong-net \
-e "KONG_PG_PASSWORD=kong" \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_USER=kong" \
-e "KONG_PG_HOST=kong-database" \
-e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \
kong:2.0.4-alpine kong migrations bootstrap
创建kong(无插件)
docker rm kong
docker run -d --name kong \
--network=kong-net \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=kong-database" \
-e "KONG_PG_USER=kong" \
-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 8000:8000 \
-p 8443:8443 \
-p 8001:8001 \
-p 8444:8444 \
kong:2.0.4-alpine
创建kong(插件版)
docker rm kong
docker run -d --name kong \
--network=kong-net \
-e "KONG_LUA_PACKAGE_PATH=/home/kong_plugins/kong-plugin-gamelog/?.lua;;" \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=kong-database" \
-e "KONG_PG_USER=kong" \
-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" \
-e "KONG_PLUGINS=bundled,gamelog" \
-v /root/kong_plugins:/home/kong_plugins \
-p 8000:8000 \
-p 8443:8443 \
-p 8001:8001 \
-p 8444:8444 \
kong:2.0.4-alpine
创建konga
docker rm konga
docker run -d -p 1337:1337 \
--network kong-net \
-e "TOKEN_SECRET={{somerandomstring}}" \
-e "DB_ADAPTER=postgres" \
-e "DB_HOST=kong-database" \
-e "DB_PORT=5432" \
-e "DB_USER=kong" \
-e "DB_PASSWORD=kong" \
-e "DB_DATABASE=kong" \
-e "DB_PG_SCHEMA=konga"\
-e "NODE_ENV=development" \
--name konga \
pantsel/konga:0.14.9
创建插件
本地创建 kong_plugins 文件,保存lua插件源代码,
在运行kong时选择开发版配置(看 kong 创建)运行
-v /root/kong_plugins:/home/kong_plugins \
...
-e "KONG_LUA_PACKAGE_PATH=/home/kong_plugins/kong-plugin-gamelog/?.lua;;" \
-e "KONG_PLUGINS=bundled,gamelog" \
其他:
kong配置快照下载:
1. 快照功能保存当前kong router配置,可以将其导出为json文件,将router配置快速配置到其他kong
2. 快照保存在网盘 kong/快照
konga菜单栏的snapshost选项,可以保存和上传