BASIC
KONG API
GATEWAY
Day 1
ผู้สอน
โดม เจริญยศ, นเรศ เก็จรัมย์
Nginx
OpenResty
Lua
02
เนือหาทังหมด
TCP/IP
HTTP Kong
Nginx
OpenResty
Lua
03
คาบที 1/5
TCP/IP
HTTP
04
TCP/IP
HTTP
https://users.cs.cf.ac.uk/DumpeBI/
05
HTTP
Nginx
OpenResty
Lua
06
Nginx
07
Nginx [engine-x] is an
HTTP and reverse proxy
server, a mail proxy
server, and a generic
TCP/UDP proxy server.
https://nginx.org/en/
Nginx.conf
/etc/nginx/nginx.conf
08
09
Default
Config
Context/Directive
10
Context/Directive
11
Context/Directive
12
OpenResty
13
OpenResty is a full-fledged
web platform that integrates
our enhanced version of
the Nginx core, our enhanced
version of LuaJIT
https://openresty.org/en/
14
Order of Lua
nginx module directive
https://github.com/openresty/lua-nginx-module
15
lua-resty-*
Lua
16
Lua is a powerful, efficient, lightweight,
embeddable scripting language. It supports
procedural programming, object-oriented
programming, functional programming,
data-driven programming, and data
description.
https://www.lua.org/about.html
17
Kong API Gateway
18
Kong คืออะไร
Kong เปน API Gateway ทีพัฒนาต่อยอดมาจาก
Nginx/OpenResty/Lua โดยเก็บค่าคอนฟกต่างๆไว้บน
Database และสามารถคอนฟกได้ง่ายผ่าน RESTful API
https://github.com/kong/kong
19
API Gateway คืออะไร
API Gateway คือ ทางผ่านสําหรับเรียกใช้ API
และใช้สําหรับจัดการ API
(API Management)
20
ทําไมถึงเลือกใช้ Kong
ใช้งานง่าย ประสิทธิภาพสูง ติดตังทีไหนก็ได้
เพิมความสามารถของ Kong ได้ด้วย Plugin ที
เขียนด้วย Lua และ Golang
21
22
Kong Features
23
Before Start
https://docs.docker.com/get-docker/
https://docs.docker.com/compose/install/
https://git-scm.com/book/en/v2/Getting-Started-Installing-Git
ติดตัง Docker
ติดตัง Docker Compose
ติดตัง Git
24
Kong Quick Start
git clone https://github.com/narate/kong-docker -b pg kong
cd kong
time ./start.sh
25
Expose your Services with Kong Gateway
curl http://127.0.0.1:8001/services 
-d name=httpbin 
-d url=http://httpbin.org
curl http://127.0.0.1:8001/services/httpbin/routes 
-d paths[]=/
curl http://127.0.0.1/headers
End of Day 1
26

Basic Kong API Gateway