|
| 1 | +#!/bin/bash |
| 2 | + |
| 3 | +echo " 🚀 Export Default Configuration" |
| 4 | +curl -s localhost:8001 | jq '.configuration' > .config/kong/configuration-default.json |
| 5 | + |
| 6 | +echo " 🚀 Set Rate Limit Globbaly to 60 requests per minute." |
| 7 | +curl -X POST http://localhost:8001/plugins \ |
| 8 | + --data name=rate-limiting \ |
| 9 | + --data config.minute=60 \ |
| 10 | + --data config.policy=local | jq '.' > .config/kong/admin-api-rate-limit-global.json |
| 11 | + |
| 12 | +echo " 🚀 Set Default Proxy Cache to 30 seconds" |
| 13 | +curl -X POST http://localhost:8001/plugins \ |
| 14 | + --data "name=proxy-cache" \ |
| 15 | + --data "config.request_method=GET" \ |
| 16 | + --data "config.response_code=200" \ |
| 17 | + --data "config.content_type=application/json; charset=utf-8" \ |
| 18 | + --data "config.cache_ttl=30" \ |
| 19 | + --data "config.strategy=memory" | jq '.' > .config/kong/admin-api-proxy-cache-global.json |
| 20 | + |
| 21 | +echo " 🚀 Create Admin API Service" |
| 22 | +curl --request POST \ |
| 23 | + --url http://localhost:8001/services \ |
| 24 | + --data name=admin-api-service \ |
| 25 | + --data url='http://localhost:8001' | jq '.' > .config/kong/admin-api-service.json |
| 26 | + |
| 27 | +echo " 🚀 Create Admin API Route" |
| 28 | +curl --request POST \ |
| 29 | + --url http://localhost:8001/services/admin-api-service/routes \ |
| 30 | + --data 'paths[]=/admin-api' \ |
| 31 | + --data name=admin-api-route | jq '.' > .config/kong/admin-api-route.json |
| 32 | + |
| 33 | +echo " 🚀 Enable Key Auth on Admin API Service" |
| 34 | +curl --request POST \ |
| 35 | + --url http://localhost:8001/services/admin-api-service/plugins \ |
| 36 | + --header 'Content-Type: application/json' \ |
| 37 | + --header 'accept: application/json' \ |
| 38 | + --data '{"name":"key-auth","config":{"key_names":["api-key"],"key_in_query":false}}' | jq '.' > .config/kong/admin-api-key.json |
| 39 | + |
| 40 | +echo " 🚀 Create Admin API Consumer" |
| 41 | +curl --request POST \ |
| 42 | + --url http://localhost:8001/consumers \ |
| 43 | + --header 'Content-Type: application/json' \ |
| 44 | + --header 'accept: application/json' \ |
| 45 | + --data '{"username":"apim","custom_id":"apim"}' | jq '.' > .config/kong/consumer-apim.json |
| 46 | + |
| 47 | +echo " 🚀 Create APIM API Key" |
| 48 | +curl -X POST http://localhost:8001/consumers/apim/key-auth | jq '.' > .config/kong/admin-api-consumer-key.json |
0 commit comments