Description
Introduction
This course is designed for developers aiming to harness the power of Red Hat OpenShift for full-cycle application development. OpenShift simplifies container orchestration and adds powerful tools for automating builds, managing deployments, and monitoring applications. Participants will learn how to develop applications in a cloud-native manner using Source-to-Image (S2I), custom Dockerfiles, and OpenShift templates. You’ll also learn how to deploy and expose your applications, and monitor their performance using built-in tools and metrics.
Prerequisites
-
Familiarity with basic container concepts (e.g., Docker)
-
Basic knowledge of Kubernetes
-
Experience with at least one programming language (Java, Python, Node.js, etc.)
-
Understanding of version control systems (e.g., Git)
-
Access to an OpenShift environment (local or cloud)
Table of Contents
1. Overview of OpenShift for Developers
    1.1 What Is OpenShift?
    1.2 OpenShift Architecture and Developer Tools
    1.3 Developer Workflow in OpenShift
2. Setting Up Your Development Environment
    2.1 Installing OpenShift CLI (oc)
    2.2 Accessing the OpenShift Web Console
    2.3 Working with Projects and Namespaces
3. Building Applications in OpenShift
    3.1 Source-to-Image (S2I) Overview
    3.2 Custom Builds with Dockerfile
    3.3 Using OpenShift Templates and Helm Charts
    3.4 Automating Builds with Webhooks and Git
4. Managing Application Configurations
    4.1 Environment Variables and ConfigMaps
    4.2 Secrets Management
    4.3 Application Scaling and Resource Limits
5. Deploying Applications
    5.1 Deployment Strategies: Rolling, Recreate, Blue-Green
    5.2 Managing Deployments with oc
and Console
    5.3 Exposing Services and Routes
    5.4 Using DeploymentConfigs and Kubernetes Deployments
6. Integrating with CI/CD Pipelines
    6.1 Overview of Jenkins and Tekton on OpenShift
    6.2 Automated Build and Deployment Integration
    6.3 GitOps Approach with ArgoCD
7. Monitoring and Logging
    7.1 Built-in Monitoring Tools in OpenShift
    7.2 Accessing Application Logs
    7.3 Setting Up Alerts and Metrics Dashboards
    7.4 Integration with Prometheus and Grafana
8. Debugging and Troubleshooting Applications
    8.1 Debugging Pods and Containers
    8.2 Viewing Events and Diagnosing Failures
    8.3 Restart Policies and Health Probes
9. Managing Application Lifecycle
    9.1 Rolling Updates and Rollbacks
    9.2 Versioning and Tagging
    9.3 Deleting and Archiving Projects
10. Best Practices for OpenShift Application Development
    10.1 Secure Development and Image Scanning
    10.2 Optimizing Build and Deployment Pipelines
    10.3 Resource Management and Cost Efficiency
By the end of this course, developers will be proficient in building, deploying, and monitoring applications on OpenShift. They will understand how to optimize application lifecycle management, ensure high availability, and maintain observability using OpenShift-native tools. This skillset enables streamlined development workflows and faster delivery in modern cloud-native environments.
Reviews
There are no reviews yet.