Skip to main content
Version: v0.5.x

Learn from Examples

OpenChoreo empowers developers to build cloud-native applications through practical, real-world examples. This section provides comprehensive tutorials that demonstrate OpenChoreo's capabilities across different use cases and complexity levels.

Categories​

We have categorized the samples based on what you might want to do:

  • Platform Configuration - Define and customize foundational platform elements such as organizations, environments, and deployment pipelines according to your organization needs.
  • Application Deployment - Deploy different types of applications (services, APIs, web apps, tasks) using various programming languages and deployment strategies.

Platform Configuration​

When you set up OpenChoreo, certain default resources are automatically created to help you get started quickly:

  • A default organization
  • A default data plane and build plane
  • Three default environments (Dev, Staging, Prod)
  • A default deployment pipeline connecting these environments
  • A default project to organize applications

OpenChoreo provides abstractions to define:

  • Organizations – Manage access and group related projects at cluster scope.
  • Environments – Set up Dev, Staging, and Prod runtime contexts.
  • DataPlanes – Define Kubernetes clusters for application deployments.
  • BuildPlanes – Define dedicated Kubernetes clusters for CI operations.
  • DeploymentPipelines – Automate application rollouts with promotion workflows.

For more details on these concepts, refer to the Concepts documentation.

These default configurations provide a quick starting point. Once you have done some exploration you can start creating the necessary artifacts to match the needs of your organization. You can:


Application Deployment​

OpenChoreo uses a flexible ComponentType architecture where platform engineers define templates and developers create components from these templates.

Understanding ComponentTypes​

OpenChoreo provides a ComponentType abstraction that allows platform engineers to define reusable application templates with:

  • Workload types (Deployment, StatefulSet, CronJob, Job, Proxy)
  • Configurable parameters and environment overrides
  • Kubernetes resource templates with CEL expressions

Developers create Component resources that reference these ComponentTypes, providing a clean separation between platform governance and developer intent.

Default ComponentTypes​

OpenChoreo ships with three default ComponentTypes out of the box:

  • deployment/service – Backend services and APIs

    • Configurable replicas, port, resources, and image pull policy
    • Includes Deployment, Service, and optional HTTPRoute resources
    • Supports environment-specific overrides
  • deployment/web-application – Frontend or full-stack web applications

    • Always exposed via HTTPRoute with dedicated subdomain
    • Configurable replicas, port, resources, and image pull policy
  • cronjob/scheduled-task – Time-based batch jobs and background tasks

    • Configurable cron schedule, concurrency policy, and resource limits
    • Environment-specific schedules for different deployment stages

ComponentType Examples​

Learn how to work with ComponentTypes and create custom component definitions:

Application Examples by Source Type​

Examples demonstrating how to deploy components using the default ComponentTypes:

Built from Source​

Deployed from Pre-built Images​

Complete Application Examples​

  • GCP Microservices Demo – Complete multi-service application demonstrating:
    • Project organization with multiple components
    • Service interactions and dependencies
    • Coordinated deployment patterns
    • Configuration management across services

Supported Languages (via BuildPacks)​

OpenChoreo abstracts the build and deployment process using BuildPacks and Workflow resources, enabling developers to deploy applications written in:

Key Features Demonstrated​

Go Greeting Service from Source​

Learn OpenChoreo fundamentals by deploying a simple Go REST service built from source code. This example demonstrates the complete CI/CD workflow from source code to running service.

Features:

  • Source-to-deployment workflow
  • Docker-based CI process
  • REST API with greeting endpoints
  • Gateway integration and testing

Try it: Go Docker Greeter

Google Cloud Microservices Demo​

Build a complete e-commerce platform using Google's reference microservices architecture. This comprehensive example demonstrates service-to-service communication, distributed systems patterns, and complex application deployment.

Features:

  • 11 interconnected microservices
  • Frontend web application
  • Redis cache integration
  • Production-ready container images
  • Service mesh communication patterns

Try it: GCP Microservices Demo

Multi-Environment Deployment Pipeline​

Set up sophisticated deployment pipelines across development, QA, pre-production, and production environments with automated promotion workflows.

Features:

  • Four-stage deployment pipeline
  • Environment-to-environment promotion
  • Automated rollout workflows
  • Production-ready governance

Try it: New Deployment Pipeline


Community Examples​

The OpenChoreo community can contribute additional examples covering:

  • Industry-specific use cases
  • Integration with third-party services
  • Custom component types
  • Advanced deployment patterns
  • Custom workflows

Getting Help​

  • Documentation: Each example includes instruction documentation
  • Community Forums: Ask questions and share your implementations on Discord
  • GitHub Issues: Report bugs or request new examples

Ready to start building? Choose an example that matches your use case, then follow along to see OpenChoreo in action!