[kong] 使用docker搭建測試環境
阿新 • • 發佈:2019-01-03
安裝記錄,參考連結
所以在設定資料庫的時候保持一致,我這裡用的pg,然後把本地的kong程式碼掛載到docker裡面了(非必要),主要方面看程式碼時候除錯(對於開發環境還是弱了點)
docker的宿主環境 macos 10.13
安裝pg
首先是安裝pg資料庫
docker run -d --name kong-database \
-p 5432:5432 \
-e "POSTGRES_USER=kong" \
-e "POSTGRES_DB=kong" \
postgres:9.5
同步表結構
刪除本地之前的kong版本
docker rmi kong
下載最新的kong 資料庫表結構同步
docker run --rm \
--link kong-database:kong-database \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=kong-database" \
-e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \
kong kong migrations up
啟動kong
github clone 程式碼
git clone https://github.com/Kong/kong.git
啟動 kong,使用本地的kong原始碼檔案
docker run -d --name kong-local \
--link kong-database:kong-database \
-e "KONG_DATABASE=postgres" \
-e "KONG_PG_HOST=kong-database" \
-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" \
-e "KONG_ADMIN_LISTEN_SSL=0.0.0.0:8444" \
-p 9000:8000 \
-p 9001:8001 \
-v /Users/liuzhizhi/githouse/kong/kong:/usr/local/share/lua/5.1/kong/ \
kong
執行kong的各種命令
docker exec -it kong-local kong reload
這樣基本就可以愉快的玩耍了,如果資料庫有改動,在第二步合併資料庫的時候也要掛載kong的本地目錄。