Agik Setiawan - October 29, 2022

Membuat API Gateway dengan Kong

Kong adalah salah satu API Gateway yang populer dipakai oleh banyak perusahaan maupun individu terutama untuk proyek berbasis Microservices.

 

Apa itu API Gateway?


API Gateway adalah service yang digunakan sebagai pintu masuk dari Request yang dikirim oleh Client ke Service - Service yang ada di dalam API Gateway


Kali ini saya akan membagikan tutorial singkat cara mudah membuat API Gateway menggunakan Kong, dan untuk mempermudah penginstallan saya akan menggunakan Docker Compose.

 

Download Kong

Download kong di https://konghq.com atau kita bisa menggunakan Docker.


Pada contoh kali ini saya menggunakan Docker dan Docker Compose untuk menjalankan Kong.


Buatlah folder dimana kita akan menyimpan konfigurasi kong

mkdir kong
cd kong

Buat file “kong.yml” dan isi seperti contoh dibawah ini

 _format_version: "3.0"
 _transform: true

 services:
 - host: mockbin.org
   name: example_service
   port: 80
   protocol: http
   routes:
   - name: example_route
     paths:
     - /mock
     strip_path: true

Pada konfigurasi di atas kita akan membuat url “/mock” yang akan di arahkan ke “mockbin.org”


Buat file “docker-compose.yml”

version: "3.9"

services:
  kong-dbless:
    image: kong/kong-gateway:3.0.0.0
    volumes:
      - ./:/kong/declarative/
    environment:
      - KONG_DATABASE=off
      - KONG_DECLARATIVE_CONFIG=/kong/declarative/kong.yml
      - KONG_PROXY_ACCESS_LOG=/dev/stdout
      - KONG_ADMIN_ACCESS_LOG=/dev/stdout
      - KONG_PROXY_ERROR_LOG=/dev/stderr
      - KONG_ADMIN_ERROR_LOG=/dev/stderr
      - KONG_ADMIN_LISTEN=0.0.0.0:8001
      - KONG_ADMIN_GUI_URL=http://localhost:8002
      - KONG_LICENSE_DATA
    ports:
      - 80:8000
      - 8443:8443
      - 8001:8001
      - 8444:8444
      - 8002:8002
      - 8445:8445
      - 8003:8003
      - 8004:8004

Kemudian jalankan perintah

docker compose up --build

atau

docker-compose up --build


Setelah sukses coba ketik url

http://localhost/mock


Untuk membuka halaman Admin Kong, masukan alamat

http://localhost:8002

Share


Comments