Skip to main content
The Sock Shop microservices demo is a popular, realistic example application that showcases a typical microservices architecture: multiple Deployments, Services, databases, and other Kubernetes/OpenShift resources. It’s widely used to validate platform configurations, test observability tools, and exercise CI/CD pipelines. If you want to run the upstream Kubernetes manifests with kubectl:
For this guide we use the OpenShift-adapted microservices demo. The OpenShift variant contains manifests adjusted to run without cluster-admin privileges and to leverage OpenShift features such as Routes. As you explore the repository you’ll find the full UI and many individual services (front-end, catalog, carts, orders, databases, etc.):
A screenshot of a GitHub README page for a microservices demo displaying a webpage header with a close-up photo of striped socks and three feature boxes, followed by a Weave Scope visualization diagram. The image shows the browser UI and tabs around the README content.
The OpenShift microservices demo manifests are prepared to run without cluster-admin rights. Use oc commands on OpenShift; kubectl works for upstream Kubernetes clusters.
Quick walkthrough — deploy the demo from the terminal
  1. Clone the repository and change into it:
  1. Create an OpenShift project and apply the demo manifest:
Applying the manifest creates many Deployments and Services required by the app. You should see resource creation messages similar to:
  1. Expose the front-end service (if the manifest didn’t already create a Route), then list the Route to get the public host:
A sample oc get route output showing the HTTP host:
Open the HOST/PORT URL in your browser to view the running application.
  1. Verify Deployments and Pods:
You can also watch progress live:
In the OpenShift web console navigate to:
  • Workloads → Deployments to inspect each Deployment
  • Workloads → Pods to view pod status and logs
  • Networking → Routes to find the front-end URL
Common CLI commands (quick reference) Why use the CLI?
  • Speed and repeatability: Applying manifests via oc or kubectl is fast and automatable.
  • Scriptable: CLI commands integrate readily into CI/CD pipelines and automation scripts.
  • OpenShift-specific features: oc adds convenience commands such as oc new-project and native support for Routes (which often replace Kubernetes Ingress on OpenShift).
  • Debugging: CLI access to oc logs, oc exec, and oc describe makes troubleshooting straightforward.
Deployment options on OpenShift
  • From the web console (UI)
  • Directly from a Git repository (Build/Apps pipelines, GitOps)
  • From the terminal using oc (covered above)
Try each method to determine which best fits your workflow. For a fast, repeatable demo environment the CLI approach is often the quickest.
Pods may take a few minutes to reach Running status. If pods are in CrashLoopBackOff or Pending, check events and logs: oc describe pod <pod> and oc logs <pod> to identify image pull errors, liveness/readiness failures, or resource quota issues.
Further reading and references

Watch Video