基於 Docker 的 Kong 的環境搭建

基於 Docker 的 Kong 的環境搭建

本次操做都是基於 Docker 進行操做的,使用的 Kong 的版本是 1.2.0 ,使用的 PostgreSQL 版本是 9.6。本文檔的前提是已經安裝最新版 Docker,並可以鏈接至 Docker 官方鏡像中心下載鏡像。若是有不知足的條件,自行調整命令。docker

  • 建立 Kong 專用網絡數據庫

    建立一個 Kong 相關鏡像的專用網絡,經過這個網絡實現網絡互通。bootstrap

    docker network create kong-network
    複製代碼
  • 安裝數據庫bash

    使用 Docker 安裝 PostgreSQL 數據庫,加入 Kong 專用網絡,建立用戶kong,建立數據庫kong。網絡

    docker run -d \
      --name kong-database \
        --net kong-network \
        -p 5432:5432 \
        -e "POSTGRES_USER=kong" \
        -e "POSTGRES_DB=kong" \
        postgres:9.6
    複製代碼
  • 初始化數據庫post

    使用 Kong 官方鏡像提供的功能初始化 PostgreSQL 數據庫。由於接入了Kong專用網絡,因此這裏的KONG_PG_HOST 直接寫 kong-database ,也就是前面建立的 PostgreSQL 數據庫的容器 name。spa

    docker run --rm \
        --net kong-network \
        -e "KONG_DATABASE=postgres" \
        -e "KONG_PG_HOST=kong-database" \
        -e "KONG_PG_PASSWORD=kong" \
        -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \
        kong:1.2.0 kong migrations bootstrap
    複製代碼
  • 安裝 Kongcode

    安裝完成後在宿主機請求 http://localhost:8001/ ,能正常響應則表示部署成功了。ssl

    docker run -d --name kong \
        --net kong-network \
        -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, 0.0.0.0:8444 ssl" \
        -p 8000:8000 \
        -p 8443:8443 \
        -p 8001:8001 \
        -p 8444:8444 \
        kong:1.2.0
    複製代碼
  • 安裝 konga文檔

    咱們使用 konga 的圖形界面來更方面的管理 kong。訪問 http://localhost:1337/ 能正常訪問則表示安裝成功。咱們使用的最簡單的部署方式,Konga 相關的信息是存儲在本地的。

    docker run -d --name konga \
        --net kong-network \
        -p 1337:1337 \
        pantsel/konga
    複製代碼
  • 配置鏈接

    新增一個鏈接至剛剛新建的kong,Kong Admin URL 填 http://kong:8001 ,type 選擇 default。

相關文章
相關標籤/搜索