OpenShift Route Operations: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 15: Line 15:
Expose a service externally:
Expose a service externally:


  [[oc expose]] service <''service-name''> --hostname=noss-dev.apps.openshift.novaordis.io[--hostname=<''fully-qualified-external-name''>] [--port=<''target-port>''] [--path=/<''target-path''>]
  [[oc expose]] service <''service-name''> [--hostname=<''fully-qualified-external-name''>] [--port=<''target-port>''] [--path=/<''target-path''>]


  oc expose service novaordis-session-servlet --hostname=noss-dev.apps.openshift.novaordis.io --port=8080
  oc expose service novaordis-session-servlet --hostname=noss-dev.apps.openshift.novaordis.io --port=8080

Revision as of 04:58, 20 January 2018

Internal

Overview

Route Information

oc get route 
oc edit route nexus

Expose a Service

Expose a service externally:

oc expose service <service-name> [--hostname=<fully-qualified-external-name>] [--port=<target-port>] [--path=/<target-path>]
oc expose service novaordis-session-servlet --hostname=noss-dev.apps.openshift.novaordis.io --port=8080

If --hostname is not specified, the standard <appname>-<projectname>.<default-routing-subdomain>

Note that if --path is used, the value must begin with "/", otherwise the "oc expose" command will fail. TODO: 'path' requires research, an attempt to use it led to application being rendered inaccessible.

Specifying Termination Policy

In some cases, services were not publicly exposed because their route did not have a termination policy. To add a termination policy:

oc edit route <route-name>

and then

spec:
  ...
  tls:
    insecureEdgeTerminationPolicy: Redirect
    termination: edge
  ...

Unsecure Routes

TODO: Unsecure routes do not work, this is because HAProxy only binds on 443, not 80. Fix this.