使用Docker安裝KONG和KONGA并使用外部數據庫

安裝外部數據庫postgresql

我是采用的寶塔的postgresql管理器進行安裝的,選擇的是11.0版
安裝好之后,分別添加數據庫kong和數據庫konga穿香,設立用戶名和密碼


image.png

先設定數據庫訪問權限為“所有人”扔水,這個在后面會說到


image.png

docker安裝KONG

docker pull kong:2.1-ubuntu
先獲取鏡像朝氓,目前最新的鏡像是kong2.1

獲取完鏡像后,先建立docker專用網絡
docker network kong-net

初始化kong數據庫

docker run --rm \
--network=kong-net \
     -e "KONG_DATABASE=postgres" \
     -e "KONG_PG_HOST=172.17.0.1" \
     -e "KONG_PG_PORT=5432" \
     -e "KONG_PG_USER=kong" \
     -e "KONG_PG_DATABASE=kong" \
     -e "KONG_PG_PASSWORD={數據庫密碼}" \
     -e "KONG_CASSANDRA_CONTACT_POINTS=kong" \
     kong:2.1-ubuntu kong migrations bootstrap

kong官方文檔里待德,都是采用的docker安裝postgresql枫夺,然后通過kong-net自動發(fā)現,我嘗試了较坛,很多情況下扒最,都會連接數據庫失敗。最根本的原因還是在初始化的時候法竞,官方給的參數說明實際上并不完整和準確强挫。
KONG_PG_HOST:代表數據庫地址,這個不能使用官方文檔范例里一樣的容器名呆细,要用IP稠诲。在使用外部數據庫的時候,先用ifconfig命令,查看源主機對應docker的IP地址价卤,如果源主機安裝了docker后,使用ifconfig命令床嫌,會看到docker0的段落內容,里面就有ip_address鳖谈。
KONG_PG_PORT:數據庫端口號阔涉,官方以及網絡上很多文檔,都沒有寫這個參數贯要,很多時候都會因為缺少這個參數導致連接不上數據庫
KONG_CASSANDRA_CONTACT_POINTS:這個后面的值是數據庫名椭住,不像官方說明一樣是容器名

執(zhí)行完后,就可以正式創(chuàng)建kong的容器

docker run -d --name kong \
     --network=kong-net \
     -e "KONG_DATABASE=postgres" \
     -e "KONG_PG_HOST=172.17.0.1" \
     -e "KONG_PG_PORT=5432" \
     -e "KONG_PG_USER=kong" \
     -e "KONG_PG_DATABASE=kong" \
     -e "KONG_PG_PASSWORD={數據庫密碼}" \
     -e "KONG_CASSANDRA_CONTACT_POINTS=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 8001:8001 \
     -p 8444:8444 \
     kong:2.1-ubuntu

在官方說明里宅广,這一段同樣缺少了部分參數跟狱,查了很多資料才填上這個坑金拒。
至此,KONG的容器就創(chuàng)建好了绪抛。
使用命令 curl -i http://localhost:8001 試試看有沒有內容輸出幢码,如果有很多Json內容輸出就代表成功了。

docker安裝KONGA

kong的社區(qū)版沒有UI界面管理症副,都是命令行式的贞铣,不太方便,所以選用KONGA來進行Kong的管理辕坝。目前網絡上用的比較多的是kong-dashboard,但是這個已經不支持最新版的kong琳袄,所以選用了新秀konga。

獲取鏡像

docker pull pantsel/konga:0.14.9
目前konga的最新版本為0.14.9

初始化數據庫

docker run --rm --network=kong-net pantsel/konga:0.14.9 -c prepare -a postgres -u postgresql://{數據庫密碼}@172.17.0.1:5432/konga

這里的IP地址同上安裝kong時的址否。

執(zhí)行完后碎紊,創(chuàng)建konga容器

docker run --name konga \
    --network=kong-net \
    -e "DB_ADAPTER=postgres" \
    -e "DB_HOST=172.17.0.1" \
    -e "DB_PORT=5432" \
    -e "DB_USER=konga" \
    -e "DB_PASSWORD={數據庫密碼}" \
    -e "DB_DATABASE=konga" \
    -e "KONG_HOOK_TIMEOUT=120000" \
    -e "NODE_ENV=production" \
    -p 1337:1337 \
    pantsel/konga:0.14.9

至此konga就安裝好了矮慕。可以使用http://localhost:1337訪問瘟斜。konga里可以設置訪問域名痪寻,替代這種帶端口號的。我為了簡單橡类,使用了反向代理,達到一樣的效果取劫。

image.png

最后谱邪,因為之前設定的數據庫的訪問權限是所有人庶诡,為了安全,我們必須得更改一下這個權限扯俱。要變更權限喇澡,需要先知道容器的地址是什么,我們可以用如下命令來查看:
docker inspect kong
這個命令可以查看kong這個容器的所有相關信息库继。我們找到Netsworks段窜醉,里面有個之前設定的kong-net,在期間我們可以找到容器的IP地址榨惰。

image.png

其間的IPAddress就是容器地址拜英。因為我們容器都使用了kong-net,所以所有容器都在一個網段琅催,那么我們就可以設定數據庫只開放給這一個網段
image.png

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末居凶,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子藤抡,更是在濱河造成了極大的恐慌侠碧,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,561評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件缠黍,死亡現場離奇詭異弄兜,居然都是意外死亡,警方通過查閱死者的電腦和手機瓷式,發(fā)現死者居然都...
    沈念sama閱讀 90,218評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來贸典,“玉大人视卢,你說我怎么就攤上這事±韧眨” “怎么了据过?”我有些...
    開封第一講書人閱讀 157,162評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長妒挎。 經常有香客問我绳锅,道長,這世上最難降的妖魔是什么饥漫? 我笑而不...
    開封第一講書人閱讀 56,470評論 1 283
  • 正文 為了忘掉前任榨呆,我火速辦了婚禮,結果婚禮上庸队,老公的妹妹穿的比我還像新娘积蜻。我一直安慰自己,他們只是感情好彻消,可當我...
    茶點故事閱讀 65,550評論 6 385
  • 文/花漫 我一把揭開白布竿拆。 她就那樣靜靜地躺著,像睡著了一般宾尚。 火紅的嫁衣襯著肌膚如雪丙笋。 梳的紋絲不亂的頭發(fā)上谢澈,一...
    開封第一講書人閱讀 49,806評論 1 290
  • 那天,我揣著相機與錄音御板,去河邊找鬼锥忿。 笑死,一個胖子當著我的面吹牛怠肋,可吹牛的內容都是我干的敬鬓。 我是一名探鬼主播,決...
    沈念sama閱讀 38,951評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼笙各,長吁一口氣:“原來是場噩夢啊……” “哼钉答!你這毒婦竟也來了?” 一聲冷哼從身側響起杈抢,我...
    開封第一講書人閱讀 37,712評論 0 266
  • 序言:老撾萬榮一對情侶失蹤数尿,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后惶楼,有當地人在樹林里發(fā)現了一具尸體右蹦,經...
    沈念sama閱讀 44,166評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,510評論 2 327
  • 正文 我和宋清朗相戀三年鲫懒,在試婚紗的時候發(fā)現自己被綠了嫩实。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,643評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡窥岩,死狀恐怖甲献,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情颂翼,我是刑警寧澤晃洒,帶...
    沈念sama閱讀 34,306評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站朦乏,受9級特大地震影響球及,放射性物質發(fā)生泄漏。R本人自食惡果不足惜呻疹,卻給世界環(huán)境...
    茶點故事閱讀 39,930評論 3 313
  • 文/蒙蒙 一吃引、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧刽锤,春花似錦镊尺、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,745評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至宋彼,卻和暖如春弄砍,著一層夾襖步出監(jiān)牢的瞬間仙畦,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,983評論 1 266
  • 我被黑心中介騙來泰國打工音婶, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留慨畸,地道東北人。 一個月前我還...
    沈念sama閱讀 46,351評論 2 360
  • 正文 我出身青樓桃熄,卻偏偏與公主長得像先口,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子瞳收,可洞房花燭夜當晚...
    茶點故事閱讀 43,509評論 2 348