-
Notifications
You must be signed in to change notification settings - Fork 358
Home
Welcome to the express-gateway wiki!
Pipeline resolution based on hostname and path both with wildcard support
####Public Endpoints host, path, pipeline_name
####Private Endpoints url, port, path
http server configs port
https server configs port and certificates
pipelines
APIs - group of public endpoint (Does not include consumer management)
YAML example: publicEndpoints: # specify pipeline per domain and path cats: host: ".cats.com" # regexp support path: / # optional defaults to / pipeline: cats_pipeline mycats: host: ".mycats.com" path: /cats pipeline: cats_pipeline big-dogs: host: big-dogs.com pipeline: dogs_pipeline animals-cats: host: "animals.com" path: /cats pipeline: cats_pipeline animals-dogs: host: "animals.com" path: /dogs pipeline: dogs_pipeline
http: # if not specified EG will not start http server port: 9080
https: # if not specified EG will not start https server port: 9443 certificates: # will use SNI callback to provide proper certificate for domain "*.lunchbadger.io": key: "example/keys/lunchbadger.io.key.pem" cert: "example/keys/lunchbadger.io.cert.pem" "api.lunchbadger.com": key: "example/keys/lunchbadger.com.key.pem" cert: "example/keys/lunchbadger.com.cert.pem" "default": key: "example/keys/lunchbadger.io.key.pem" cert: "example/keys/lunchbadger.io.cert.pem"
privateEndpoints: # urls to downstream services cats_service: url: "http://localhost" port: 3000 path: / # optional defaults to / dogs_service: url: http://localhost port: 4000
pipelines: cats_pipeline: title: Cats Pipeline policies:
- action: name: proxy # proxy to cats_service downstream service privateEndpoint: cats_service
dogs_pipeline: title: dogs Pipeline policies:
- condition: name: always
action: name: proxy # proxy to dogs_service downstream service privateEndpoint: dogs_service
apis: animals: name: animals plan: free public_endpoints:
- cats
- mycats
- dogs