mirror of
https://github.com/vimagick/dockerfiles.git
synced 2024-12-23 01:39:27 +02:00
1.2 KiB
1.2 KiB
krakend
KrakenD is a high-performance open source API Gateway.
Its core functionality is to create an API that acts as an aggregator of many microservices into single endpoints, doing the heavy-lifting automatically for you: aggregate, transform, filter, decode, throttle, auth and more.
krakend config
krakend.json
{
"version": 2,
"name": "My httpbin gateway",
"port": 8080,
"endpoints": [
{
"endpoint": "/httpbin",
"backend": [
{
"host": [
"https://httpbin.org"
],
"url_pattern": "/headers"
},
{
"host": [
"https://httpbin.org"
],
"url_pattern": "/ip"
}
]
}
]
}
$ krakend-config2dot -c krakend.json | dot -Tpng -o krakend.png
up and running
$ docker-compose up -d
$ curl http://localhost:8080/httpbin
{
"headers": {
"Accept-Encoding": "gzip",
"Host": "httpbin.org",
"User-Agent": "KrakenD Version 1.0.0"
},
"origin": "172.17.0.1, 1.2.3.4, 172.17.0.1"
}