Skip to main content

Inigo Gateway

The Inigo gateway provides full observability and controls on all individual subgraphs. Follow the instructions to get up and running.

Get service token​

Set up a service and a token by following Getting Started.

Build your docker image​

Use Inigo Gateway docker image as a base one to build your own, use example below.

FROM inigohub/gateway

COPY federated.schema.graphql schema.graphql
COPY inigo.gateway.yml config.yml

ENTRYPOINT ["/usr/bin/gateway", "--schema", "schema.graphql", "--config", "config.yml"]
  • --schema (optional) - it is a static schema, which is used as a fallback in case if gateway is not connected to Inigo registry or it cannot pick up a schema from there for a particular reason.
  • --config (optional) - it is a basic gateway configuration, that must be picked up on a startup. See the example of the runtime configuratin below.

Config​

listen_port: 80                         # default
graphql_route: /graphql # default
subgraph_http_request_timeout: 30s # default
pass_through_url: http://api-service:80

health_check: # default
enable: true
path: /health

headers:
all:
- operation: propagate
named: Authorization
- operation: propagate
named: X-App-Header

open_telemetry:
enabled: true
service_name: inigo-gateway
endpoint: opentelemetry-collector
collect_all: true
insecure: true

Run​

$ docker run -d \
-e INIGO_SERVICE_TOKEN="YOUR-INIGO-SERVICE-TOKEN" \
-p 80:80 gateway

Head over to the Configuration documentation to learn more about the available environment variables.