1 簡介
Kong不是一個簡單的產(chǎn)品,本文講的Kong主要指的是Kong API Gateway,即API網(wǎng)關(guān)。這次主要是簡單體驗一把,通過Docker安裝,然后使用它的Route功能。
2 安裝
創(chuàng)建Docker的Network:
# 創(chuàng)建
$ docker network create kong-net
# 檢查
$ docker network list
Kong可以使用無數(shù)據(jù)庫模式,為了窺探一下它的配置,我們還是使用數(shù)據(jù)庫,啟動如下:
$ docker run -itd --network=kong-net \
--name kong-database \
-e POSTGRES_DB=kong \
-e POSTGRES_USER=pkslow \
-e POSTGRES_PASSWORD=pkslow-kong \
-p 5432:5432 \
postgres:13
接著進(jìn)行migrations操作,可以理解為是準(zhǔn)備數(shù)據(jù)庫:
$ docker run --rm \
--network=kong-net \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=kong-database" \
-e "KONG_PG_USER=pkslow" \
-e "KONG_PG_PASSWORD=pkslow-kong" \
kong:2.5.0-ubuntu kong migrations bootstrap
準(zhǔn)備就緒后,就可以啟動Kong了:
$ docker run -itd --name kong \
--network=kong-net \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=kong-database" \
-e "KONG_PG_USER=pkslow" \
-e "KONG_PG_PASSWORD=pkslow-kong" \
-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 127.0.0.1:8001:8001 \
-p 127.0.0.1:8444:8444 \
kong:2.5.0-ubuntu
它的Admin端口為8001,通過下面命令驗證:
$ curl -i http://localhost:8001/
3 測試Route功能
先創(chuàng)建一個服務(wù),可以理解為注冊一個服務(wù),服務(wù)名為pkslow,地址為( www.pkslow.com ):
$ curl -X POST --url http://localhost:8001/services/ --data 'name=pkslow' --data 'url=https://www.pkslow.com'
創(chuàng)建路由規(guī)則,路徑為/pkslow,對應(yīng)的服務(wù)為pkslow:
$ curl -X POST --url http://localhost:8001/services/pkslow/routes --data 'paths[]=/pkslow'
這樣,當(dāng)我們訪問路徑/pkslow時,其它訪問的就是服務(wù)pkslow的內(nèi)容。
訪問測試,注意端口為8000了:
$ curl -i -X GET --url http://localhost:8000/pkslow
到此,我們就成功安裝并使用了Kong Gateway的Route功能了。
4 總結(jié)
Kong的強(qiáng)大在于它可以安裝許多的插件來實(shí)現(xiàn)各種功能,如驗證、限流、緩存等。它的強(qiáng)大,等你來挖掘。
到此這篇關(guān)于Docker安裝Kong API Gateway并使用的詳細(xì)教程的文章就介紹到這了,更多相關(guān)Docker安裝Kong API Gateway內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!