Cybus::IngressRoute
Last updated
Last updated
© Copyright 2024, Cybus GmbH
This resource describes a HTTPS address or TCP port that can be accessed by outside users and will be forwarded to a specific HTTP or TCP port of a service container. Any service container that provides results to users outside of the Connectware, such as presenting a web dashboard, will need to define suitable IngressRoute resources to make the web page accessible to the outside.
A route is defined by specifying the target container
, which is an already defined Cybus::Container resource. The route will point to target
at the container instance, which is where the port and (optionally) address path in the container is specified. The route is reachable from the outside by accessing the Connectware using a URL with the first part being the ServiceID of the service container, followed by the specified slug
of this route. Any additional parts of the URL after the slug will be attached to the request that is forwarded to the service container.
Example: The outside user accesses a Connectware instance at IP address 1.2.3.4 using the full URL https://1.2.3.4/services/<serviceId>/<slug><sometext>
. This will be forwarded to service container using the internal address http://<container>/<target><sometext>
.
For each installed service, a private, closed virtual network is created which all containers of this service are assigned to.
Property | Type | Required | Default |
---|---|---|---|
Reference to an already declared Cybus::Container. Use !ref <resourceID>
is required (when using http)
type: string
Last part of the ingress route.
is optional
type: string
maximum length: 20 characters
All instances must conform to the following regular expression (we recommend using online validators for regular expressions such as regexr.com)
is optional
type: object
All items must be of the type: object
with following properties
path
If specified, the proxy will rewrite the path. Use this if the base path of the target http server cannot be modified.
is optional
type: string
port
The port of the container the proxy should point to. This must be a Docker exposed port.
is optional
type: integer
default: 80
Whether to forward HTTP or TCP traffic
is optional
type: enum
default: http
The value of this property must be equal to one of the below.
http
tcp
The internal TCP port on the service container
is requried (when using tcp)
type: integer
The externally reachable code when establishing a TCP connection
is required (when using tcp)
type: integer
Only ports between 40000-40100 may be used
An array of strings representing headers to be forwarded to the target container. The format of each string must be <header name>:<header value>
.
Property | Type | Required | Default |
---|---|---|---|
string
Required
string
Required (http)
object
Optional
enum
Optional
"http"
integer
Required (tcp)
integer
Required (tcp)
array
Optional
path
string
Optional
port
integer
Optional
80