
By default, OpenShift has the following URLs.
- https://api.<basename>
- https://apps.<basename>
- https://console.<basename>
- https://logs.<basename>
- https://metrics.<basename>
- https://registry.<basename>
API
The API URL (e.g. api.openshift.example.com) is used to submit REST API calls to OpenShift. The oc config view command can be used to return the API Server HTTPS URL.
~]$ oc config view
apiVersion: v1
clusters:
- cluster:
server: https://api.openshift.example.com:6443
APPS
The "apps" URL (e.g. apps.openshift.example.com) is used to submit a request into (ingress) an app running on OpenShift. The oc get ingresses.config command can be used to return the apps URL.
~]$ oc get ingresses.config cluster --output jsonpath={.spec.domain}
apps.openshift.example.com
An OpenShift route or an Ingress route will provide a URL such as http://my-route-my-project.apps.openshift.example.com:8080 which is used to route a request onto a service, which is then routed onto a pod, and then to the container in the pod, and finally to the application running in the container.
Like this.
REGISTRY
The first time you deploy an application, the application should be pulled down from the online repository that contains the image, such as the registry.redhat.io online repository or the hub.docker.com online repository, and stored in your internal OpenShift registry, such as image-registry.openshift-image-registry.svc:5000. In the openshift-image-registry namespace, there should be an image-registry deployment that contains an environment variable REGISTRY_OPENSHIFT_SERVER_ADDR which will have the registry URL.
~]$ oc get deployment image-registry --namespace openshift-image-registry --output yaml
spec:
template:
spec:
containers:
env:
- name: REGISTRY_OPENSHIFT_SERVER_ADDR
value: image-registry.openshift-image-registry.svc:5000
Did you find this article helpful?
If so, consider buying me a coffee over at