《一》安裝
1.使用docker創建網絡和數據卷
docker network create kong-net
docker volume create kong_data
2.創建 pg 數據庫docker容器
將postgresql網絡指定爲新建的網絡,(docker原來使用–link,新版本不建議使用,使用–network將兩個容器指定到同一個網絡來解決問題)
docker run -d --name kong-database \
--network=kong-net \
-p 5432:5432 \
-e "POSTGRES_USER=kong" \
-e "POSTGRES_PASSWORD=kong@8888" \
-e "POSTGRES_DB=kong" \
-v kong_data:/var/lib/postgresql/data
postgres:9.6
3.kong 數據遷移到 pg
docker run --rm \
--network=kong-net \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=kong-database" \
-e "KONG_PG_PASSWORD=kong@8888" \
-e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \
kong:latest kong migrations bootstrap
4.創建 kong 容器並啓動
此處修改了默認端口(8000->28000)
docker run -d --name kong \
--network=kong-net \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=kong-database" \
-e "KONG_PG_PASSWORD=kong@8888" \
-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 28000:8000 \
-p 28443:8443 \
-p 28001:8001 \
-p 28444:8444 \
kong:latest
5.kong GUI 之konga安裝
此處修改了默認端口(1337 ->21337 )
docker run --rm pantsel/konga:latest -c prepare -a postgres -u postgresql://kong:kong@[email protected]:5432/kong
docker run -p 21337:1337 \
--name konga \
-e "TOKEN_SECRET=liyafeng1988" \
-e "DB_ADAPTER=postgres" \
-e "DB_HOST=192.168.1.27" \
-e "DB_PORT=5432" \
-e "DB_USER=kong" \
-e "DB_PASSWORD=kong@8888" \
-e "DB_DATABASE=kong" \
-e "NODE_ENV=production" \
pantsel/konga
doker 運行截圖:
kong admin 訪問截圖:
http://192.168.8.71:28001/
konga 訪問截圖:
http://192.168.8.71:21337/
進入後先註冊admin賬號後並登錄(此處樣例是liyafeng)
《二》kong使用
在konga頁面先配置service再配置route
service配置
route配置
**route path可以自己配置自己的路徑
**host可以填可以不填,即訪問的域名,如果 不填則用kong的ip加端口+route path訪問*此處kong默認端口28000(原始是8000)
訪問測試
(*注意本例中端口沒有采用原始端口而是在原始端口前加了2)
下一節: