DevOps Demos. Boilerplates/Samples, Tutorials & Screencasts
- DevOps Screencasts
- DevOps Blogs
- Kubernetes Blogs
- DevOps Docker Demos
- Kubernetes Demos
- Webhooks app
- Django on K8s
- Postgres Operator
- CI/CD with SpringBoot for Kubernetes
- Kubernetes CKAD Example Exam Questions Practical Challenge Series
- Istio Service Mesh
- Envoy Service Mesh
- Consul Service Mesh
- Kubernetes Network Policy Samples
- Rancher
- GitOps Workflow with Flux
- Amazon EKS. Deploy example microservices on EKS
- Azure AKS
- Google Kubernetes Engine GKE
- Environments to learn and practice Kubernetes security
- Harbor Container Registry
- OPA Gatekeeper
- Konveyor Move2Kube
- Red Hat Demo Central
- OpenShift Demos
- Developer Sandbox
- OpenShift VS Kubernetes
- IBM Cloud Pak Playbooks and GitOps
- Knative
- OpenShift Pipelines Workshop (Tekton)
- OpenShift GitOps (ArgoCD)
- ArgoCD
- GitLab Pipelines on OpenShift
- Deploying Web Applications with Eclipse JKube (formerly known as Fabric8 Maven Plugin)
- Monitoring Services with OpenShift ServiceMesh
- Red Hat Migration Toolkit for Applications
- Red Hat Advanced Cluster Management RHACM. Red Hatβs Hybrid And Multi-Cloud Platform
- OKD
- Helm demos
- Writing Kubernetes Operators
- Customized Reports with Metering Operator (monitoring k8s resources)
- Red Hat AMQ Streams (Kafka)
- OpenShift AI
- Jenkins Demos
- Jenkins Declarative Pipelines with OpenShift
- OpenShift Pipelines with S2i and Jenkins Blue Ocean
- Jenkins Configuration as Code on Kubernetes
- From Jenkins Freestyle jobs to Pipeline, with JobDSL. Seed jobs
- Jenkins and GitHub
- Jenkins and AWS Kubernetes
- SDKMAN
- Jenkins Scripts
- Postman \& Newman API Automated Tests
- Monitoring Jenkins with Grafana
- Jenkins X
- Spinnaker
- Nexus3 on Kubernetes
- GitLab
- Spring PetClinic Sample Application
- AWS Samples (Boilerplates)
- Azure Samples
- GCP Samples
- SpringBoot Demos
- Quarkus Demos
- Golang Demos
- Kafka
- Apache Camel \& ActiveMQ. Event driven integration
- Codeless
- JBoss EAP
- Terraform
- Prometheus and Grafana
- GitHub Actions
- Red Hat Process Automation Manager
- API Testing and Postman
- OpenTelemetry
- QR Codes
- Serverless
- Labs
DevOps Screencasts
DevOps Blogs
- DevStack All about DevOps
Kubernetes Blogs
DevOps Docker Demos
- RedHatGov.io is an open source collection of workshop materials that cover various topics relating to Red Hat’s product portfolio.
- github.com/wardviaene (kubernetes, terraform, ansible, docker, etc) π
- thoughtworks.com: Modernizing your build pipelines with Concourse CI π
- yankils/Simple-DevOps-Project
- Spring PetClinic Sample Application By following this repository you can able to setup a DevOps CI/CD Pipeline using: git, Jenkins, Maven, Ansible, Docker & Kubernetes
- swissarmydevops.com
- dev.to: Build a highly available Node.js application using Docker, NGINX and AWS ELB
- towardsdatascience.com: Developing and Deploying a COMPLETE Project Using FastAPI, Jinja2, SQLAlchemy, Docker, and AWS
- dzone: Docker Image Tutorial In this tutorial, see how to build and run a Docker image using Python code examples.
- linuxtechlab.com: How to create a Dockerfile with some dockerfile examples
- bregman-arie/devops-exercises π This repo contains questions and exercises on various technical topics related to DevOps and SRE. Linux, Jenkins, AWS, Cloud, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, OpenShift, Big Data, Databases, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization, DevOps Interview Questions.
- jose-r-lopez/SSI_Materials A bunch of infrastructure automation scripts we use in our course, in case you find them useful!
- dzone: DIY DevOps, CI, and CD with GitHub, Docker and a VPS Azure and AWS is insanely cool until you look at your invoice and realise that what you’re paying for can easily be replicated for 2% of your current cloud costs.
- github.com/learning-cloud-native-go/myapp: Learning Cloud Native Go - myapp π How to build a Dockerized RESTful API application using Go.
Container Tools
- dzone Avengers of the Container World, Episode 1: Podman Hands-On π CRI-O and Podman have been widely adapted by most of the modern container platforms. In this blog, we will deep-dive on Podman with a hands-on session.
- dzone: Avengers of Container World, Episode 2: Buildah and Skopeo Hands-On π In this post, we will explore Buildah and Skopeo, build a Node.js application container using Buildah, and run it using Podman
Ansible and Ansible Tower
- ansible.github.io/workshops/demos : Red Hat Ansible Automation Platform Workshops
- Red Hat Ansible Tower - Workshop and Demo
- blog.stephane-robert.info: Ansible - Utiliser MySQL comme inventaire dynamique (Use MySQL as a dynamic inventory)
- opensource.com: Build a Kubernetes Minecraft server with Ansible’s Helm modules Deploy a Minecraft server into a Kubernetes cluster with Ansible’s new collections.
- developers.redhat.com: Run your first Ansible Playbook (Katakoda)
- kubernetes-advocate.medium.com: Website Deployment to AWS with Ansible
- konstruktoid.medium.com: Running a NGINX container using rootless Docker with Ansible
- kmahi2600.medium.com: Launching A WordPress Application With MYSQL Database in K8S Cluster On AWS Using Ansible
- faun.pub: Automation: Deploying an app in GKE using Ansible Ansible infrastructure-as-code to automate Nginx deployment in Google Kubernetes Cluster (GKE) on Google Cloud Platform (GCP).
- galaxy.ansible.com/ansible/product_demos π
- ankush-chavan.medium.com: Creating Multi-Cloud Kubernetes Cluster on AWS, Azure, and GCP cloud
- redhat.com: Build a lab in 36 seconds with Ansible Using Ansible makes provisioning virtual machines automated, flexible, repeatable, and fast.
- betterprogramming.pub: Clean Up Your Kubernetes Deployments Using Ansible Playbooks and templates make rolling out K8s objects a breeze
- praveendandu24.medium.com: Ensuring AWS Infrastructure Consistency with Ansible Playbooks
GitOps
- thenewstack.io: GitOps in Multicluster Environments with Anthos Config Management
- kubesandclouds.com: Werf: Fully customizable GitOps π Werf builds and publishes images, deploys applications to Kubernetes clusters, and removes unused images based on policies and rules defined in the Git repository.
- mytechramblings.com: A practical example of GitOps using Azure DevOps, Azure Container Registry, Helm, Flux and Kubernetes
- youtube.com: Cloud Native GitOps with Anthos and JFrog Artifactory
- todaywasawesome/oss-apps: OSS Applications Example repo to show GitOps lifecycle from staging to production with canary and blue/green deployments. This is a GitOps repo that acts as the source of truth for the open source team at Codefresh demoing GitOps apps.
Kubernetes Demos
- kubernetesbyexample.com π
- Free Kubernetes ππ List of free Trials/Credit for Managed Kubernetes Services.
- github.com/eon01/kubernetes-workshop
- wardviaene/kubernetes-course
- github.com/kubernetes-course/container_workshops
- Mautic
- howtoforge.com: How to create a Deployment in Kubernetes
- codeburst.io: getting started with kubernetes, deploy a docker container in 5 minutes
- Kubernetes workshop in a box
- medium.com/@Kubernetes_Advocate π
- medium: Efficient Node Out-of-Resource Management in Kubernetes
- itnext.io: K8s raise StatefulSet volume size with low impact Shown step-by-step on a simple example application
- Kubernetes Examples
- medium: Prometheus-Grafana on K8s
- blog.scottlowe.org: Using kubectl via an SSH Tunnel Learn how to use kubectl via an SSH Tunnel to connect to the Kubernetes API server.
- trainings.kubernauts.sh Learn Kubernetes by doing and run into problems!
- magalix.com: How To Integrate OPA Into Your Kubernetes Cluster Using Kube-mgmt
- itnext.io: Kubernetes Journey β Up and running out of the cloud β How to setup the Masters using kubeadm bootstrap
- medium: Build a Federation of Multiple Kubernetes Clusters With Kubefed V2
- medium: Single Sign-On in Kubernetes This article walks you through creating a service, exposing it with an Ingress, and adding Single Sign On. The article uses Okta (but of course youβre free to use any other OIDC SSO provider you prefer)
- medium: Kubernetes in a nutshell β tutorial for beginners ππ Deploy a complete application stack just in a few steps!
- shipa.io: Developing and deploying applications to Kubernetes locally with Shipa and Minikube
- shipa.io: Deploying a real-world application on Kubernetes
- shipa.io: GitOps in Kubernetes, the easy wayβwith GitHub Actions and Shipa
- shipa.io: A Developer focused CI/CD pipeline for Kubernetes
- kruyt.org: Running a mailserver in Kubernetes
- piotrminkowski.com: RabbitMQ Monitoring on Kubernetes
- dzone: Bootstrapping Java Kubernetes Apps With Spring Initializr and K8s Initializer π Build a Spring Boot app and deploy to K8s without writing a single line of YAML.
- medium: Production Ready CI/CD Pipeline with Kubernetes
- myweblearner.com: Kubernetes(k8s) Readiness and Liveness Probe
- medium.com: Attacking Kubernetes clusters using the Kubelet API Knock-knockinβ on kubeletβs door. From the doormat to full node access.
- nfrankel/jvm-controller Example on how to write a kubernetes controller in Java. The demo code for nfrankel’s talk on Kubernetes operators in Java.
- matthewpalmer.net: Kubernetes Ingress with Nginx Example π
- developers.redhat.com: Deploying Node.js applications to Kubernetes with Nodeshift and Minikube
- itnext.io: Breaking down and fixing Kubernetes In this article you’ll break the cluster, delete certificates and rejoin the nodes without causing any downtime.
- dev.to: Implementing a simple K8s admission controller in Go
- sj14.gitlab.io: Deploy a free Kubernetes cluster in the cloud
- ishantgaurav.in: Complete Application Deployment using Kubernetes
- betterprogramming.pub: Deploy a Python API With Docker and Kubernetes Autoscale compute-intensive workloads to keep up with changing demand
- github.com/developer-guy: Set up HA k3s cluster on DigitalOcean using Terraform + Ansible
- cncf.io: Kubernetes Ingress gRPC example with a Dune quote service
- betterprogramming.pub: How To Create a NoOps Deployment With GitHub Actions Kubernetes and Shipa Discover the DevOps simplicity and reduce the Kubernetes complexity
- ahgraber/homelab-terraform Bootstrap VMs with Terraform & vSphere provider
- piotrminkowski.com: Kubernetes Multicluster with Kind and Cilium
- todaywasawesome/atomic-cluster: The Atomic Cluster Running a k3s Kubernetes cluster homelab on the adorable and affordable Atomic Pi.
- youtube: Deploy Docker image to Kubernetes Cluster | CI-CD for Azure Kubernetes Service | Mohamed Radwan - DevOps
- howtoforge.com: How to deploy your first pod on a Kubernetes Cluster
- github.com/AdminTurnedDevOps/kubernetes-examples This repo contains a bunch of Kubernetes examples
- levelup.gitconnected.com: Deploying a Simple Golang Web App to Kubernetes Part II: Deployment Using YAML Configuration
- medium.com/groupon-eng: LoadBalancer Services using Kubernetes in Docker (kind) In this tutorial, you’ll learn how to build a multi-node kind cluster with
extraPortMappings
to forward requests from your host to an NGINX ingress controller - devxblog.hashnode.dev: Deploying Microservices with Persistent Volumes in Kubernetes - Kubernetes Microservice Flask Application
- medium.com/@hmquan08011996: Setup Microservices on Kubernetes β Write a Configuration File Deployed the microservice to Kubernetes
- github.com/AdminTurnedDevOps/kubernetes-in-production-examples This repo contains examples of a few tools and services you may use in production.
Webhooks app
- webhooks.app Webhook endpoints available for your tests and demos.
- itnext.io: Journey Of A Microservice Application In The Kubernetes World Presentation of webhooks.app . TL;DR webhooks.app is an open source application following the microservice architecture. Its purpose is to provide a webhook endpoint for demos. In this series of articles, I will present the application and several steps I used (and will use) to have it running in production in a Kubernetes cluster.
Django on K8s
- digitalocean.com: How To Deploy a Scalable and Secure Django Application with Kubernetes
- dev.to: Django on K8s (Part 0: Introduction)
Postgres Operator
CI/CD with SpringBoot for Kubernetes
- CI/CD for Kubernetes through a Spring Boot example (Banzai Cloud CI/CD)
- onlineitguru.com: How to utilize Spring Boot Microservices on Kubernetes?
- piotrminkowski.com: Spring Boot on Kubernetes with Buildpacks and Skaffold π
- spring.io: YMNNALFT: Easy Docker Image Creation with the Spring Boot Maven Plugin and Buildpacks
Deploy a Spring Boot Application to Openshift with Spring Cloud Kubernetes and Fabric 8 Maven Plugin
- github: Spring Cloud Kubernetes π
- baeldung.com: Deploy a Spring Boot Application to OpenShift with Spring Cloud Kubernetes π
Spring Initializr and k8s Initializer
- Spring Initializr π a web application that can generate a Spring Boot project structure, fill in your project details, pick your options, and download a bundled up project
- k8s Initializer π Build Your Own Application-Ready Kubernetes Playground. Generate YAML configs for ingress, CI/CD, observability, authentication, and more in just 3 minutes.
- dzone: Bootstrapping Java Kubernetes Apps With Spring Initializr and K8s Initializer Build a Spring Boot app and deploy to K8s without writing a single line of YAML
- hashicorp.com: Getting Started with Ambassador and Consul Using Kubernetes Initializer Kubernetes Initializer built by Ambassador Labs provides a new experience for simplifying the deployment of Ambassador and Consul in a Sandbox Kubernetes environment.
Kubernetes CKAD Example Exam Questions Practical Challenge Series
Istio Service Mesh
- github: redhat-developer-demos Istio Tutorial for Java Microservices
- blog.jetstack.io: Istio OIDC Authentication In this article you’ll deploy an app and secure it with authenticaiton and authorisation for using Istio
- github.com/stefanprodan/gitops-istio: A GitOps recipe for Progressive Delivery with Flux v2, Flagger and Istio π
- blog.alexellis.io: A bit of Istio before tea-time In this post you will learn how to set up a full Istio demo running with a public IP directly to your laptop Wirth KinD
Envoy Service Mesh
- loginradius.com: Service Mesh with Envoy This post will cover a working setup of a service mesh architecture using Envoy using a demo application. You will be using Envoy proxy for both control and data plane.
Consul Service Mesh
- medium: Consul-Kubernetes Ingress Gateways and L7 Traffic Management
- medium: Kittens-as-a-Service: Layer 7 Traffic Management & Security with Consul Connect
- learn.hashicorp.com: Consul Service Discovery and Mesh on Minikube π
- consul.io: Ingress Gateways on Kubernetes π
Kubernetes Network Policy Samples
- ahmetb/kubernetes-network-policy-recipes π Example recipes for Kubernetes Network Policies that you can just copy paste. This repository contains various use cases of Kubernetes Network Policies and sample YAML files to leverage in your setup. If you ever wondered how to drop/restrict traffic to applications running on Kubernetes, this is for you.
Rancher
- Deploy a Rancher Cluster with GitLab CI and Terraform
- cncf.io: Implementing GitOps on Kubernetes Using K3s, Rancher, Vault and Argo CD
- stackrox.com: Part 1 - Rancher Kubernetes Engine (RKE) Security Best Practices for Cluster Setup π
- thenewstack.io: Maximize K3s Resource Efficiency with Calico eBPF Data Plane
GitOps Workflow with Flux
- managedkube.com: A Complete Step by Step Guide to Implementing a GitOps Workflow with Flux
- youtube: GitOps Guide to the Galaxy (Ep 12): Flux On OpenShift
- flux2-kustomize-helm-example π A GitOps workflow example for multi-env deployments with Flux, Kustomize and Helm.
Amazon EKS. Deploy example microservices on EKS
- eksworkshop.com
- eksworkshop.com/x-ray/microservices
- eksworkshop.com: Configure Cluster Autoscaler (CA)
- aws.amazon.com: Deploy a kubernetes application
- aws blogs: Git Push to Deploy Your App on EKS
- medium: create your first application on aws eks kubernetes
- dzone: deploying a kubernetes cluster with amazon eks π
- stacksimplify.com: DevOps with AWS CodePipeline on AWS EKS
- medium: AWS App Mesh with EKS and Canary deployment
- github.com/stacksimplify/aws-eks-kubernetes-masterclass π
- hbollon/k8s-voting-app-aws Example of a distributed voting app running on Kubernetes. Written in Golang with Terraform definitions to deploy to AWS EKS
- aws.plainenglish.io: Deploying Application on Amazon EKS
Azure AKS
- github.com/stacksimplify/azure-aks-kubernetes-masterclass π
- channel9.msdn.com: Troubleshoot AKS cluster issues with AKS Diagnostics and AKS Periscope
- trstringer.com: Deploy to AKS from GitHub Actions π
- trstringer.com: Deploy to AKS Using a Managed Identity from a GitHub Actions Self-Hosted Runner π
- medium.com/bb-tutorials-and-thoughts: How to Build and Deploy MERN Stack on Azure AKS MERN stands for MongoDB, Express, React, Node, after the four key technologies that make up the stack. Express and Node make up the middle (application) tier.
- You will dockerize the app and push that image to the Azure container registry
- You will pull the image and deploy it to AKS
- You will learn how to expose the app
- Azure/Draft π
Google Kubernetes Engine GKE
- cloud.google.com: Troubleshooting services on Google Kubernetes Engine by example π
- github.com/MatthewCYLau: React App on Google Kubernetes Engine (GKE) with Terraform
- github.com/MatthewCYLau: TypeScript Node Express Google Kubernetes Engine (GKE)
Environments to learn and practice Kubernetes security
- The Kubernetes Goat designed to be intentionally vulnerable cluster environment to learn and practice Kubernetes security.
Harbor Container Registry
OPA Gatekeeper
- chrisns/k8s-opa-boilerplate Boilerplate example of managing OPA with kustomize
- medium: Verifying container signatures on Kubernetes with Gatekeeper
- medium: Mutating Kubernetes resources with Gatekeeper
- opensource.com: Implement governance on your Kubernetes cluster Use OPA Gatekeeper to create and enforce policies and governance for your Kubernetes clusters so the resources you apply comply with that policy.
Konveyor Move2Kube
- Move2Kube is a command-line tool for automating creation of Infrastructure as code (IaC) artifacts. It has inbuilt support for creating IaC artifacts for replatforming to Kubernetes/Openshift.
- medium.com/@hari.balagopal: Create a Helm chart automatically from Kubernetes YAMLs Generating custom Helm charts, Kustomize YAMLs, Openshift templates and more, using Move2Kube.
Red Hat Demo Central
- gitlab.com/redhatdemocentral π
- redhatdemocentral.gitlab.io
- CodeReady Containers - Red Hat Decision Manager Install Demo
- youtube: CodeReady Containers - Easy OpenShift Container Platform 4.5 Installation
- gitlab.com/redhatdemocentral: Healthcare Have you wondered what an edge medical diagnosis architecture might look like when you want to create a scaleable #opensource solutions? Here’s a peak at the logical view, but you can explore all the diagrams.
Cloud Native Development Architectural Diagrams Demos
- Cloud-native development is an approach to building and running applications to fully exploit the advantages of the cloud computing model (i.e. responsive, elastic and resilient applications).
- Portfolio Architecture Workshops for creating impactful architectural diagrams. This workshop will teach you how to use, design, and create architectural diagrams based on the draw.io tooling and Red Hat Portfolio Architecture design elelements. You’ll leverage existing portfolio architecture diagrams as starting points.
OpenShift Demos
- developers.redhat.com: Developing on OpenShift (katacoda interactive learning) π Learn how to access an OpenShift cluster, manage apps with the odo command-line tool, then try image and source-based deployment techniques.
- github.com/OpenShiftDemos π
- DockerHub OpenShift Demos
- Red Hat Tutorials & Examples: github.com/redhat-developer-demos π
- redhatgov.io RedHatGov.io is an open source collection of workshop materials that cover various topics relating to Red Hat’s product portfolio.
- blog.openshift.com: OCP multi-node deployment on AWS using CloudFormation and Ansible (quickstart workshop)
- Deploying Docker Images to OpenShift We take a look at how to deploy a Docker image from DockerHub into RedHat’s OpenShift environment, bringing added functionality along the way.
- SonarQube: An OpenShift-focused Docker build of Sonarqube
- Deploying PostgreSQL in MiniShift/OpenShift 3
- Clustering WildFly on Openshift
- Java EE example on Openshift
- Microprofile example on Openshift
- Deploying WildFly apps on Openshift
- Running Thorntail apps on Openshift
- Running Spring Boot applications on Openshift
- github.com/openshiftdemos π
- github.com/openshift-labs π
- MapIt MapIt is a geo-spatial Spring Boot app which shows the location of AirPorts on the Map using Leaflet.
- openshift.com: Simple Canary Deployments using Kubernetes StatefulSets on OpenShift
- github.com/jbossdemocentral: Red Hat Process Automation Manager Mortgage Demo
- medium: Tutorial : Secure your API with x509 Mutual Authentication with Spring Boot on OpenShift4
- medium.com: Red Hat OpenShift Virtualization in nested VMware vSphere Cluster In this post, I’ll go thru the process of running Virtual Machines on OpenShift Virtualization in a nested setup inside VMware vSphere. This requires both ESXi hosts and a VCenter, both on 6.7U3 or up.
- schabell.org: CodeReady Containers - Building a Cloud-Native Human Resources Process
- developers.redhat.com: Persistent storage in action: Understanding Red Hat OpenShiftβs persistent volume framework π
- opensource.com: Set up Minishift and run Jenkins on Linux Install, configure, and use Minishift to create your first pipeline.
- dzone: CodeReady Containers - Exploring a home loan mortgage process As a cloud-native developer you’ve installed an OpenShift Container Platform development environment on your local machine, but what’s next…
- Rcarrata’s blog
- JBoss Web Server Operator π Did you know that you can run Tomcat in Containers on Kubernetes in a easy supported manner? Take a look at the JBoss Web Server (a.k.a. @RedHat ‘s build of Tomcat) Operator for OpenShift
- developers.redhat.com: Containerize and deploy Strapi CMS applications on Kubernetes and Red Hat OpenShift
- developers.redhat.com: Build lean Java containers with the new Red Hat Universal Base Images OpenJDK runtime images π
- youtube: No YAML! Kubernetes done the easy way | DevNation Tech Talk
- developers.redhat.com: New application samples in Red Hat OpenShift 4.8 Check out all of the new and updated samples that comes with OpenShift 4.8. Try any or all of these samples within minutes of downloading your free openshift cluster.
- developers.redhat.com: Build and store universal application images on OpenShift (with Buildah)
- piotrminkowski.com: Serverless Java Functions on OpenShift
Developer Sandbox
- Developer Sandbox for Red Hat OpenShift π Get free access to the Developer Sandbox for Red Hat OpenShift and deploy your application code as a container on this self-service, cloud-hosted experience. Skip installations and deployment and jump directly into OpenShift.
- developers.redhat.com: How to deploy a Java application on Kubernetes in minutes Move your legacy Java application into a container and deploy it to Kubernetes. The Developer Sandbox for Red Hat OpenShift is a free OpenShift cluster that gives you access to the cutting-edge technologies built on Kubernetes. A quick sign-up gets you a cluster and access to a set of developer tools and services. Move this Spring Pet Clinic example application into a container using the Source-to-Image (s2i) feature.
- developers.redhat.com: Welcome to the Developer Sandbox for Red Hat OpenShift. Part 1: Deploying full-stack JavaScript applications to the Developer Sandbox for Red Hat OpenShift
OpenShift VS Kubernetes
- developer.ibm.com: Example exercises to differentiate OpenShift and Kubernetes Example exercises to differentiate OpenShift and Kubernetes. Walk through some steps with Red Hat OpenShift on IBM Cloud.
IBM Cloud Pak Playbooks and GitOps
- IBM Cloud Pak Playbook
- cloud-native-toolkit/multi-tenancy-gitops π Provides our opinionated point of view on how GitOps can be used to manage the infrastructure, services and application layers of K8s based systems. The GitOps concept originated from Weaveworks back in 2017 and the goal was to automate the operations of a Kubernetes (K8s) system using a model external to the system as the source of truth (History of GitOps). This repository provides our opinionated point of view on how GitOps can be used to manage the infrastructure, services and application layers of K8s based systems. It takes into account the various personas interacting with the system and accounts for separation of duties. The instructions and examples are focused around the Red Hat OpenShift platform and IBM Cloud Paks. The reference architecture for this GitOps workflow can be found here.
Knative
- knative-tutorial A pratical guide to get started with knative. Knative concepts are explained simple and easy way with lots of demos and exercises.
- aymen-segni.com: Deploying Serverless Services on Kubernetes using Knative
OpenShift Pipelines Workshop (Tekton)
- Build a Go application using OpenShift Pipelines
- openshift-pipelines-workshop Workshop to demonstrate OpenShift Pipelines (featuring Tekton)
- OpenShift Pipelines Catalog
- systemcraftsman/lab-tekton-pipelines: OpenShift Pipelines workshop
- openshift.com: GitOps Using Red Hat OpenShift Pipelines (Tekton) and Red Hat Advanced Cluster Management
- Set up continuous integration for .NET Core with OpenShift Pipelines
- alesnosek.com: CI/CD Pipeline Spanning Multiple OpenShift Clusters (jenkins & tekton)
- openshift.com: Guide to OpenShift Pipelines Part 1 - Introducing OpenShift Pipelines
- kailashyogeshwar.medium.com: How we implemented Reusable CI/CD Pipeline using Git and Tekton
- openshift.com: GitOps Using Red Hat OpenShift Pipelines (Tekton) and Red Hat Advanced Cluster Management to Deploy on Multiple Clusters π
- developers.redhat.com: Getting started with Tekton and Pipelines
- developers.redhat.com: Bootstrap GitOps with Red Hat OpenShift Pipelines and kam CLI Generate a #GitOps repository using the kam CLI for simple GitOps adoption by bootstrapping Git repositories with opinionated layouts for continuous delivery.
- dev.to: What is Knative Serving? A Friendly Guide In this article you will explore several benefits of Knative Serving:
- Ease of deployment
- Scale to zero
- Traffic splitting
- Rollbacks
- Routes and access
OpenShift GitOps (ArgoCD)
- docs.openshift.com: OpenShift GitOps
- cloud.redhat.com: Virtual Machines as Code with OpenShift GitOps and OpenShift Virtualization
ArgoCD
- rromannissen/rhoar-microservices-demo: GitOps for Microservices with Red Hat Runtimes demo A GitOps pipeline example using ArgoCD, tektoncd and HelmPack for springboot and QuarkusIO microservices.
- developers.redhat.com: From code to production with OpenShift Pipelines and Argo CD
- developers.redhat.com: Building modern CI/CD workflows for serverless applications with Red Hat OpenShift Pipelines and Argo CD, Part 1
- itnext.io: Deploy Argo CD with Ingress and TLS in Three Steps: No YAML Yak Shaving Required π
- developers.redhat.com: Introduction to Tekton and Argo CD for multicluster development
- itnext.io: Solving ArgoCD Secret Management with the argocd-vault-plugin π
- youtube: Exploring The Cloud-native Kubernetes CI/CD Pipeline Tool Landscape In this meetup, we explore the new era of Kubernetes continuous integration continuous deployment pipelines based on a set of fancy tools as Tekton Pipelines, ArgoCD or Helm. We walk through the new DevOps and GitOps technologies landscape and a real demonstration of how these tools work together in order to make developers and system administrators lives easier. repo1 , repo2 , slides
- blog.argoproj.io: Introducing the ApplicationSet Controller for Argo CD
- vzilla.co.uk: GitOps - Getting started with ArgoCD
- openshift.com: SSO Integration for the OpenShift GitOps Operator This is a demo-heavy blog. Readers of this blog will get an idea about why SSO is important, how OpenShift handles authN/authZ and a step-by-step guide on using Red Hat Single Sign-On(RHSSO) to log in to an Argo CD application.
- openshift.com: How to Use HashiCorp Vault and Argo CD for GitOps on OpenShift
- blog.argoproj.io: Getting started with ApplicationSets
- piotrminkowski.com: Kubernetes CI/CD with Tekton and ArgoCD π
- infracloud.io: Multicluster GitOps with ArgoCD
- developers.redhat.com: Managing GitOps control planes for secure GitOps practices π
- opensource.com: Get started with Argo CD π Argo CD is a simple pull-based GitOps deployment tool that syncs Kubernetes manifest files with a cluster for easy, no-nonsense deployments.
- blog.argoproj.io: Getting started with ApplicationSets
- blog.argoproj.io: Introducing the AppSource Controller for ArgoCD
- piotrminkowski.com: Continuous Delivery on Kubernetes with Database using ArgoCD and Liquibase
- medium.com/adaltas: GitOps in practice, deploy Kubernetes applications with ArgoCD
- gokuldevops.medium.com: Argo CD-Sample app deployment Argo CD one of the most popular continues deployment tools used in Kubernetes. It is very simple to use and quite powerful. Personally, it is the first tool in my mind when I think of Kubernetes GitOps.
- codefresh.io: Using Argo CD and Kustomize for ConfigMap Rollouts ππ In this article, you will learn how to automatically rollout ConfigMap changes in your GitOps workflows using Argo CD and Kustomize.
- medium.com/@martin.hodges: Spring Boot CI/CD on Kubernetes using Terraform, Ansible and GitHub: Part 12
- mrcloudbook.com: Automating Tetris Deployments: DevSecOps with ArgoCD, Terraform, and Jenkins for Two Game Versions
- mrcloudbook.com: GitOps: Deploying Tetris on EKS Using ArgoCD
GitLab Pipelines on OpenShift
Deploying Web Applications with Eclipse JKube (formerly known as Fabric8 Maven Plugin)
- Building and Deploying a Weather Web Application onto Kubernetes/Red Hat OpenShift using Eclipse JKube
- Java development on top of Kubernetes using Eclipse JKube
- youtube: Deploy your Java applications to the Cloud using Eclipse JKube (petclinic) π
Monitoring Services with OpenShift ServiceMesh
Red Hat Migration Toolkit for Applications
- Migration Toolkit for Applications: Getting Started
- Migration Toolkit for Applications Demo - June 2020 Migraiton Toolkit from Applications by Red Hat can help you migrate and/or modernize your applications by analyzing them and finding isses such as use of proprietary classes or behaviousr that are not conformant with 12factor app, in order to help you modernize your app portfolio and make it more cloud & container friendly.
- dzone: Red Hatβs Migration Toolkit for Applications This article explains how to analyze monolithic Java applications in multiple workspaces with Red Hatβs migration toolkit for applications.
Red Hat Advanced Cluster Management RHACM. Red Hatβs Hybrid And Multi-Cloud Platform
- openshift.com: Applications Here, Applications There! - Part 3 - Application Migration
- Advanced Cluster Management Demos Want to manage Kubernetes clusters at scale? Struggle with Application Lifecycle? Need to ensure Security and Compliance policies across clusters? Check out these demos of Red Hat Advanced Cluster Manager (RHACM).
- redhat.com: ACM Ansible Integration Overview
- opensift.com: K8s Integrity Shield (tech-preview): Protecting the Integrity of Kubernetes Resources with Signature
- cloud.redhat.com: How to Observe your Clusters with Red Hat Advanced Cluster Management - Customize the Grafana Dashboard
OKD
- medium.com: Installing an OKD 4.5 Cluster
- openshift.com: Recap: OKD 4 Testing and Deployment Workshop - Videos and Additional Resources
Helm demos
- Katacoda Lab: Getting Started with Helm 3 on OpenShift
- wkrzywiec.medium.com: How to deploy application on Kubernetes with Helm In this blog post I present step-by-step how to deploy multiple applications on Kubernetes cluster using Helm.
- dzone.com: Deploy a Java application with JBoss EAP using Helm, Part 1
- josephrodriguezg.medium.com: Deploying a Spring Boot microservice in Kubernetes using Helm charts
Writing Kubernetes Operators
Customized Reports with Metering Operator (monitoring k8s resources)
Red Hat AMQ Streams (Kafka)
- developers.redhat.com: HTTP-based Kafka messaging with Red Hat AMQ Streams
- developers.redhat.com: Message broker integration made simple with Red Hat Fuse This article presents a sample integration between Red Hat AMQ 7 and IBM MQ, using Red Hat Fuse 7 for the integration. Traditionally, developers have used resource adapters for message bridging with external systems. A resource adapter is a system library that provides connectivity to an enterprise information system (EIS). Similar to how a Java Database Connectivity (JDBC) driver provides connectivity to a database management system, a resource adapter plugs into an application server such as Red Hat JBoss Enterprise Application Platform (JBoss EAP). It then connects the application server, enterprise information system, and the enterprise application.
OpenShift AI
- OpenShift AI Examples A repository containing deployments of popular open source generative AI projects including Open-WebUI, Ollama, and Stable Diffusion WebUI.
Jenkins Demos
- kublr.com: cicd pipeline with jenkins nexus kubernetes
- bitbucket.org: setting up a cicd pipeline with spring mvc and kubernetes on aws
- Medium.com - Simple Spring Boot microservice deployed in Kubernetes using Docker and Nexus π:
- kubernetes-advocate.medium.com: CI/CD with Dockers and Jenkins π
- medium.com/@devml2016: Letβs Start Automation using Jenkins, Docker, GitHub
- developers.redhat.com: An easier way to create custom Jenkins containers Create your own custom Jenkins container image by aggregating readily available containers in a pod template.
- medium: Just commit your code and your docker server is ready (jenkins + github + docker)
- lambdatest.com: Best Jenkins Pipeline Tutorial For Beginners (Examples) π
- ittroubleshooter.in: Run Parallel Builds in Kubernetes Cluster with Jenkins Pipeline π
- cloudogu/jenkinsfiles πππ This project contains examples for the Jenkins pipeline plugin, comparing both declarative and scripted syntax. The examples were developed while working on an article series called Coding Continuous Delivery published in Java aktuell. Both English translation and German original can be found on the Cloudogu Blog.
- aws.amazon.com: Integrating Jenkins with AWS CodeArtifact to publish and consume Python artifacts
- github.com/monodot/pipeline-library-demo π Demonstrates how to use a Shared Library in Jenkins pipelines. This repository defines a single function, sayHello, which will echo a greeting.
- piotrminkowski.com: Continuous Integration with Jenkins on Kubernetes π
- youtube: Simple DevOps Project | Publish Android APK to App Center | Beginner Pipeline
- blog.flant.com: Configuring Continuous Integration for Jenkins & Bitbucket using werf
- lambdatest.com: Comprehensive Guide To Jenkins Declarative Pipeline [With Examples] π
- dzone: A Deep Dive on Continuous Integration and Continuous Delivery: Part 1 As part of this article, let’s do a deep dive on Continuous Integration and Continuous Delivery with the AnyPoint Platform, CloudHub.
- dzone: A Deep Dive on Continuous Integration and Continuous Delivery: Part 2 As part of this article, we will continue to explore CI-CD attraction would be Mule Maven Plugins with Connected App to deploy the artifact to CloudHub.
- medium: DevOps CI/CD Pipeline with Jenkins, Kubernetes & GitHub: Part 1 π How to set up Jenkins and CI/CD pipelines using GitHub?
- medium: Building CI/CD Pipeline with Jenkins, Kubernetes & GitHub: Part 2 π How To Configure Jenkins To Build Your CI CD Pipeline?
- developers.redhat.com: Deploy Helm charts with Jenkins CI/CD in Red Hat OpenShift 4 π
- devopscube.com: How to Setup Jenkins Build Agents on Kubernetes Cluster π
- medium: Deploy Docker Image To Kubernetes Cluster Using Jenkins π This article explains the complete DevOps pipeline setup from creating project to deploying the Docker image to Kubernetes cluster using Jenkins.
- igorzhivilo.com: How To Read Vaultβs Secrets from Jenkinβs Declarative Pipeline π
- simplilearn.com: What is CI/CD Pipeline and How to Implement it Using Jenkins?
- youtube: CI CD Pipeline Using Jenkins | Continuous Integration and Deployment using Azure Devops | K21Academy
- lambdatest.com: How To Create Jenkins Multibranch Pipeline π
- faun.pub: [DevOps] Create your first CI/CD pipeline!! A CI/CD pipeline is a series of steps that must be performed in order to deliver a new version of software.A CI/CD pipeline introduces monitoring and automation to improve the process of application development, particularly at the integration and testing phases, as well as during delivery and deployment. Although it is possible to manually execute each of the steps of a CI/CD pipeline, the true value of CI/CD pipelines is realized through automation.
- lakshaws.medium.com: CI/CD Pipeline for Dockerized Applications Kubernetes is becoming de-facto standard for containerized applications and it is important to be aware and get yourself familiarized with of CI/CD Pipeline for Dockerized Applications. I have created the CI/CD Pipeline Using AWS, Jenkins and EKS as major components.
- github.com/arun-gupta/docker-jenkins-pipeline: Docker + Java + Jenkins Pipeline Devops for Java EE
Jenkins Declarative Pipelines with OpenShift
- github.com/openshift: Using Jenkins Declarative Pipelines with OpenShift π
- github.com/gnunn1/openshift-basic-pipeline
- github.com/deweya/OpenShift-Jenkins-Lab
- Red Hat CodeReady Containers (Minishift equivalent for OpenShift 4.2 or newer) - step-by-step demo guides
- Grading Pipeline for OpenShift 4 Advanced Application Deployment Homework Assignment
- github - Demostration of a basic OpenShift CI/CD pipeline deploying an application in Development then Test
OpenShift Pipelines with S2i and Jenkins Blue Ocean
- OpenShift Pipelines with Jenkins Blue Ocean π
- github.com/siamaksade/jenkins-blueocean Jenkins Blue Ocean for OpenShift Jenkins S2I
Jenkins Configuration as Code on Kubernetes
- Demo of Jenkins Configuration-As-Code with Docker and Groovy Hook Scripts (java11-support branch) ππ
- Configuration as Code of Jenkins (for Kubernetes) ππ
- Jenkins Configuration as Code on Kubernetes π A Codecentric/Jenkins Helm 3 Sample Chart on Digital Ocean Kubernetes with Spring Petclinic Demo Pipeline
From Jenkins Freestyle jobs to Pipeline, with JobDSL. Seed jobs
- Meetup event: From Freestyle jobs to Pipeline, with JobDSL
- Manually managing Jenkins jobs is painful. Jenkins Pipeline exists, but how do you get started and why should you bother in the first place? Journey with Nicolaj, as he talks about the pains of managing a manually configured job in Jenkins; converts a Freestyle Job to JobDSL, instantly; introduces mechanisms for adding the jobs to Jenkins, as code; and ultimately converts the job to a Jenkins Pipeline!
- Just like last time, in the talk βConfiguration as Code of Jenkins (for Kubernetes),β youβll see plenty of live demos and get to take home all the code and examples afterwards. Use it as the starting point for taking advantage of the Configuration as Code (CasC) that everyone is talking about, and hopefully it will save you a lot of headache in the future!
- Agenda:
- Manual Freestyle jobs, and why they hurt us
- Introduction to JobDSL and adding JobDSL-jobs to Jenkins
- From Freestyle Jobs to JobDSL, the beginning of our CasC adventure
- From JobDSL to Pipeline, all the fun of CasC; with even more resilience!
- Nicolaj GrΓ¦sholt is a Continuous Delivery and DevOps Consultant and Trainer from Eficode Praqma. He helps organizations with all things CI/CD, Artifact Management, Git, Docker and Kubernetes, and heβs a Certified Kubernetes Administrator of CNCF.
- Slides πππ
- Demo repository πππ
- Links of interest provided in the event:
- Continuation Passing Style (CPS) is a style of programming in which the remainder of the program is passed explicitly as a parameter, as opposed to that being handled implicitly represented as call stack.
- Jenkins CLI
- How to create initial “seed” job
- Jenkinsfile Runner Test Framework
- Jenkins Pipeline Unit testing framework
- Plugin Installation Manager Tool
- Jenkins Custom WAR Packager
- Jenkins Configuration as Code:
- Configuration as Code of Jenkins (for Kubernetes) π
- JEP-224: System Read permission: Improve experience of Jenkins Configuration-as-Code users It improves the modifying Web UI configuration controls to support the read-only mode.
- Plugins:
- Plugin Usage This plugin gives you the possibility to analyze the usage of your installed plugins.
- Pipeline as YAML (Incubated) π
- Jenkins Job DSL Plugin A Groovy DSL for Jenkins Jobs - Sweeeeet!
- Least Load This plugin overrides the default Load Balancer behavior and assigns jobs to nodes with the least load
- Declarative Pipeline Migration Assistant
- Jenkins Job DSL:
- Pipeline Global Library for ci.jenkins.io Collection of custom steps and variables for our Jenkins instance(s)
Video: From Freestyle jobs to Pipeline, with JobDSL. Click to expand!
Jenkins and GitHub
- towardsdatascience.com: Create your first CI/CD pipeline with Jenkins and GitHub A guide to create and deploy a freestyle Jenkins project
Jenkins and AWS Kubernetes
- youtube: How to set up AWS Kubernetes Jenkins pipeline Java Spring boot, terraform, helm chart, pipeline, destroy RDS.
SDKMAN
- SdkMan is a tool for managing parallel versions of multiple Software Development Kits on most Unix based systems. It provides a convenient Command Line Interface (CLI) and API for installing, switching, removing and listing Candidates. Formerly known as GVM the Groovy enVironment Manager, it was inspired by the very useful RVM and rbenv tools, used at large by the Ruby community.
- Using Jenkins Pipeline parallel stages to build Maven project with different JDKs
- Demo: A single Jenkinsfile, a Java Maven project, a single Dockerfile, multiple Java versions build and tested in parallel thanks to SDKMAN:
- Using SDKMAN! as a docker image for Jenkins Pipeline - a step by step guide π
- Multiple Java versions in a single Jenkins Pipeline using Docker and SDKMAN π In this video, I show you how you can use Jenkins Declarative Pipeline to create a build pipeline that compiles the Maven Java project using three different Java versions (8, 11, and 15.) You will learn how to use a matrix section of the Jenkins Pipeline to define parallel stages, as well as how to create a Docker image that provides both Java and Maven using the powerful SDKMAN command-line tool. After watching this video you should feel comfortable with setting up multiple parallel stages to build your Java project using different versions of the compiler. And what is most important - it does not require creating Dockerfiles for each Java version. I will show you how to build the pipeline using just a single Dockerfile that does the job.
- Jenkins Pipeline Maven build demo
Video: Jenkins Pipeline with multiple Java versions. Click to expand!
Jenkins Scripts
- cleanup.Jenkinsfile: Jenkinsfile with Declarative Pipeline Multiline sh that cleanups old builds. All the Stages are now visually monitored. It is triggered every saturday night and ends with jenkins restart. These Multi-line bash commands make easier to read Jenkins Projects.
- daily_restart.Jenkinsfile: A script that automatically triggers a daily restart of Jenkins due to performance issues (Jenkins is a Java application). Jenkins with Declarative Pipeline multiline sh that restarts Jenkins every night except on Saturday nights (when cleanup.Jenkinsfile is triggered).
- confluence6-docker-build.Jenkinsfile: Declarative Jenkinsfile for building and uploading a docker image to Openshift-DEV, Dockerhub and Openshift-PROD (Stages are disabled via Conditional Build Steps). Tip: A Docker Plugin for Jenkins can easily replace this Jenkinsfile.
Grab them from here: awesome-kubernetes/scripts
Postman & Newman API Automated Tests
- LerryAlexander: Postman + Newman API Automated Tests running on a Jenkins Pipeline π
- praveendavidmathew.medium.com: Data driven testing per request without using data file
- freecodecamp.org: Master API Testing with Postman
Monitoring Jenkins with Grafana
Jenkins X
- blog.testproject.io: Jenkins X Cloud Native CI/CD with TestProject
- Modernize Your CI/CD Pipeline Using Jenkins X with Amazon EKS
Spinnaker
- Demo/Evaluation Installations
- wardviaene/advanced-kubernetes-course/spinnaker π
- imperialwicket/spinnaker-demo
- henrybell/spinnaker-demo-app
- codeburst.io: Spinnaker by Example: Part 1
- codeburst.io: Spinnaker by Example: Part 2
- codeburst.io: Spinnaker by Example: Part 3
- dzone: Continuous Deployment on Kubernetes With Spinnaker In this article, learn how to setup Spinnaker and integrate it with Gitlab CI and Jenkins to build and run CI and CD pipelines.
- dzone: Continuous Delivery Pipeline for Kubernetes Using Spinnaker This post will focus on pushing out new releases of the application to our Kubernetes cluster i.e. Continuous Delivery.
- armory.io: How to Set Up Liquibase in Spinnaker
- armory.io: Build a Deployment Pipeline with Spinnaker on Kubernetes
- hackernoon: Using Spinnaker with Kubernetes for CI/CD
- amazon.com: Declarative provisioning of AWS resources with Spinnaker and Crossplane
- armory.io: Git Pull Support in Spinnaker
- containiq.com: Using Kubernetes with Spinnaker | The Ultimate Guide Spinnaker is an application deployment service. This article will provide a walkthrough and introduce best practices for deploying a Kubernetes application using Spinnaker.
Nexus3 on Kubernetes
- Proof of Concept: Nexus3 Chart configuration on Kubernetes A choerodon/nexus3 Helm 3 Sample Chart on Digital Ocean Kubernetes
GitLab
- piotrminkowski.com: GitLab CI/CD on Kubernetes
- about.gitlab.com: The basics of CI: How to run jobs sequentially, in parallel, or out of order New to continuous integration? Learn how to build your first CI pipeline with GitLab.
- about.gitlab.com: GitOps with GitLab: Connect with a Kubernetes cluster
- medium.com/@kachidude007: Setting up an Access Token in GitLab for a Jenkins Pipeline Navigate to your GitLab Personal Token Page
Spring PetClinic Sample Application
- spring-petclinic.github.io
- github.com/spring-projects/spring-petclinic
- deors/deors-demos-petclinic jenkinsfile
- liatrio.com: building with docker using jenkins pipelines
- stackoverflow: How to define BuildConfig object with Jenkins and openshift
- cloudogu.com: CD with Jenkins, Nexus and cloudogu
- experfy.com e-learning: Effective Jenkins - Continuous Delivery and Continuous Integration
- github.com/redhat-developer-demos/spring-petclinic π
- https://github.com/Azure-Samples/spring-petclinic-microservices
- https://github.com/Azure-Samples/spring-petclinic-microservices-config
- https://github.com/Azure-Samples/java-spring-petclinic
Modular Pipeline Library (MPL). Petclinic Pipeline example with MPL
- griddynamics/mpl
- blog.griddynamics.com: Developing a modular pipeline library to improve DevOps collaboration
- youtube: Modular Pipeline Library: 4. Petclinic Pipeline π MPL demo video about more or less real petclinic pipeline with selenium tests, comparison to bare jenkinsfile pipeline without mpl, modules override mechanisms.
PetClinic on Kubernetes
- github.com/spring-petclinic/spring-petclinic-kubernetes π
- While waiting for a working version, you could check this fork
- Spring PetClinic Microservices
- Google Cloud Native Spring Boot PetClinic. Spring PetClinic Microservices on GCP π Example Petclinic deployment on Google Cloud Platform into Google Kubernetes Engine with Istio. This is based on Spring PetClinic Microservices.
- spring-petclinic-microservices renamed to spring-petclinic-cloud π: https://github.com/spring-petclinic/spring-petclinic-cloud
- Distributed version of Spring Petclinic built with Spring Cloud π
- github.com/paulczar/k8s-spring-petclinic
- tech.paulcz.net/blog/spring-into-kubernetes-part-1
- github.com/kohsuke/petclinic Jenkinsfile
- pushbuildtestdeploy.com/jenkins-on-kubernetes-building-docker-images π
PetClinic Docker images
- ref 1
- ref 2
- ref 3
- ref 4
- ref 5 arey/springboot-petclinic
- ref 6
- ref 7
- ref 8
- ref 9 - I have a branch that adds Docker, Kubernetes and Knative into the mix - planning on submitting a PR at some point
OpenShift.io Samples
AWS Samples (Boilerplates)
- github.com/aws-samples π
- github.com/aws-samples/aws-auto-inventory: AWS Automated Inventory π A command line tool that allows you to quickly and easily generate inventory reports of your AWS resources.
- github.com/aws-samples/aws-waf-ops-dashboards In this repository, we share code for building infrastructure to collect, enrich, and visualize AWS Web Application Firewall logs. Implementing this project in your AWS account will allow you to view and filter the logs through Kibana dashboards below, as well as customize views and dashboards to your needs.
- github.com/aws-samples/aws-customer-playbook-framework π This repository provides sample templates for security playbooks against various scenarios when using Amazon Web Services.
- aws-samples/serverless-java-frameworks-samples: Lambda demo with common Java application frameworks π
- github.com/miztiik/AWS-Demos
- github.com/aws-samples/aws-training-demo
- aws-samples/aws-network-hub-for-terraform: Network Hub Account with Terraform This repository demonstrates a scalable, segregated, secured AWS network for multi-account organizations. Using Transit Gateway to separate production, non-production and shared services traffic, it deploys an advanced AWS networking pattern using centralized ingress and egress behind Network Firewall, centralizes private VPC endpoints to share across all VPCs, and manages IP address allocation using Amazon VPC IPAM.
- cyberciti.biz: How to create MySQL user and grant permissions in AWS RDS
- stacksimplify.com: DevOps with AWS CodePipeline on AWS EKS
- medium: Fetch Application Inventory using Systems Manager Get application inventory from each EC2 instance and store it in centralized account S3 bucket. To query the information from s3 bucket, we are integrating Glue, Athena (from another account).
- youtube: Build a Music Sharing App with Amazon S3 and AWS Amplify
- freecodecamp.org: How to Deploy a React App to Production Using Docker and NGINX with API Proxies
- itnext.io: Hydrating a Data Lake using Log-based Change Data Capture (CDC) with Debezium, Apicurio, and Kafka Connect on AWS Import data from Amazon RDS into Amazon S3 using Amazon MSK, Apache Kafka Connect, Debezium, Apicurio Registry, and Amazon EKS
- jfrog.com: 5 Steps to Hosting Your Application on Amazon Cloud Container Service
- dzone.com: From Spring Boot Microservices to Lambda Functions ππ Get your microservices where they need to be.
- AdminTurnedDevOps/DevOps-The-Hard-Way-AWS This repository contains free labs for setting up an entire workflow and DevOps environment from a real-world perspective in AWS
- medium.com/@adrianarba: CI/CD defined through terraform using AWS CodePipeline, AWS CodeCommit, and AWS CodeBuild
- faun.pub: Using AWS Session Manager With Ansible To Execute Playbook On EC2 In this post, weβll see how we can use AWS Session Manager instead of SSH to connect to an EC2 instance and execute a playboook.
- betterprogramming.pub: Build a Cloud-Native Multiprocessing Framework How to convert a local multiprocessing framework to the cloud
- github.com/aws-samples: Guide to Resource Tagging Automation A Lambda function for Resource Tagging Automation
- aws.plainenglish.io: Trigger, Function, Message | Brandi McCall Utilizing Amazon API Gateway to Invoke a Python AWS Lambda to Send a Message to Amazon SQS
- towardsaws.com: Integrating Python, Amazon API Gateway, Lambda, SQS, and SNS Services | Brandi McCall
- github.com/unitypark/aws-serverless-demos
Azure Samples
- github.com/Azure-Samples π Microsoft Azure code samples and examples in .NET, Java, Python, Node.js, PHP and Ruby
- doylestowncoder.com: Building CI/CD Pipelines with Azure Data Factory: Part 1
- github.com/microsoft: Contoso Traders - Cloud testing tools demo app The Contoso Traders app is a sample application showcasing Playwright, Azure Load Testing, Azure Chaos Studio.
Azure DevOps Demos. Azure DevOps Pipelines
- Azure DevOps Demo Generator π Azure DevOps Demo Generator helps you create projects on your Azure DevOps Organization with pre-populated sample content that includes source code, work items, iterations, service endpoints, build and release definitions based on a template you choose. The purpose of this system is to simplify working with the Azure Devops hands-on-labs π, demos and other education material provided by the Microsoft Azure Marketing team.
- Azure DevOps Demo Generator is now open source
- Get started creating and populating demo Azure DevOps Services projects
- reddit.com: Automate Infrastructure Deployments on Microsoft Azure with Terraform and Jenkins
- docs.microsoft.com: Deploy Spring microservices to Azure
- davidsr.me: Deploy Azure WAF with Terraform and Azure DevOps
- mbenko/myYAML π This project contains the initial code for a course on YAML Pipelines.
- thomasthornton.cloud: A DevOps journey using Azure DevOps - thomast1906/DevOps-Journey-Using-Azure-DevOps π
- lambdatest.com: How To Build a CI/CD Pipeline In Azure DevOps ?
- medium.com/tea-networks: Kubernetes & CI/CD Pipeline
- docs.microsoft.com: Create a build pipeline with Azure Pipelines
Azure Demos
- blogs.sap.com: Cloud Integration with Commerce Azure Blob Storage using REST API β Part 1
- blogs.sap.com: Cloud Integration with Commerce Azure Blob Storage using REST API β Part 2
GCP Samples
Google DevOps Demos. Custom Samples and Cloud Code
- Terraform Automation Demo using Google Cloud Provider
- cloud.google.com: Follow your orgβs app dev best practices with Cloud Code custom samples π As an engineering leader, it can be difficult to disseminate best practices to developers in your organization. This is critical, however, as these best practices can be used as a starting point to accelerate the time-to-market for your teamβs ideas. Today, we are excited to introduce custom samples in Cloud Code, our family of IDE plugins, helping you easily distribute your best practices directly to your developersβ environments. - youtube: Getting started with custom samples and Cloud Code
GitOps with Anthos Config Management
- Tutorial: Connect Amazon EKS and Azure AKS Clusters with Google Anthos
- Tutorial: GitOps in Multicluster Environments with Anthos Config Management
- Tutorial: Deploy Anthos Apps from GCP Marketplace into Amazon EKS Cluster
SpringBoot Demos
- javatechonline.com: How To Deploy Spring Boot Application In Docker?
- tanzu.vmware.com: Microservices with Spring Cloud Kubernetes Reference Architecture π
- Salaboy/From Monolith to K8s Workshop-style guide for rearchitecting a Java Monolith application to a Cloud Native architecture running in Kubernetes
- dyser/kubernetes-intro
- piomin/sample-spring-microservices-kubernetes: Microservices with Spring Boot and Spring Cloud on Kubernetes Demo Project - piotrminkowski.com π sample spring boot application that uses some features provided by spring cloud kubernetes, spring cloud ribbon and zuul proxy deployed on Kubernetes
- piomin/sample-spring-microservices-new: Microservices with Spring Cloud Advanced Demo Project I have just updated my sample microservices repository to the latest versions of SpringBoot (2.6.1), SpringCloud, and Java (17). The previously used versions were Java 8 and Spring Boot 2.0.6. Demo for Spring Boot 2 and Spring Cloud microservices with distributed configuration (Spring Cloud Config), service discovery (Eureka), API gateway (Spring Cloud Gateway, Zuul), Swagger2 API documentation, logs correlation using Spring Cloud Sleuth and many more.
Quarkus Demos
- Develop and test a Quarkus client on Red Hat CodeReady Containers with Red Hat Data Grid 8.0
- aytartana.wordpress.com: Migrating SpringBoot PetClinic REST to Quarkus
- aalmiray/q-cli Sample Quarkus CLI application
- piomin/sample-quarkus-serverless-kafka Demo illustrating how to run Quarkus application on Knative Eventing with Kafka and Funqy modules
- piotrminkowski.com: Introduction to gRPC with Quarkus
Golang Demos
- stefanprodan/podinfo Go microservice template for Kubernetes. Podinfo is a tiny web application made with Go that showcases best practices of running microservices in Kubernetes. Podinfo is used by CNCF projects like Flux and Flagger for end-to-end testing and workshops.
Kafka
- medium: Setting up KafkaSource to send data and displayed with Knative event-display
- towardsdatascience.com: Kafka, for your data pipeline? Why not?
- dev.to: Go, Kafka and gRPC clean architecture CQRS microservices with Jaeger tracing
- ably.com: Building a realtime ticket booking solution with Kafka, FastAPI, and Ably
- itnext.io: Event-Driven Architectures with Kafka and Java Spring-Boot β Revision 1
- codeopinion.com: Troubleshooting Kafka with 2000 Microservices
Apache Camel & ActiveMQ. Event driven integration
- tomd.xyz: Event-driven integration on Kubernetes with Camel & KEDA
- developers.redhat.com: Modernizing applications with Apache Camel, JavaScript, and Red Hat OpenShift
Codeless
JBoss EAP
- developers.redhat.com: Red Hat JBoss Enterprise Application Platform expansion pack (JBoss EAP XP) 1.0 released This version enables JBoss EAP developers to build Java microservices using Eclipse MicroProfile 3.3 APIs while continuing to also support Jakarta EE 8.
- redhat.com: Getting started with JBoss Learn how to set up JBoss EAP and start using it to build, run, deploy, and manage enterprise Java applications.
Terraform
- terraform.collabnix.com An Ultimate Terraform Hands-on Labs. Get access to 50+ tutorials around Terraform, Kubernetes & Cloud.
- opensource.com: A guide to Terraform for Kubernetes beginners Learn how to make a Minikube cluster and deploy to it with Terraform.
- medium: Install Istio on Azure Kubernetes cluster using Terraform
- brennerm.github.io: Setting up an EKS cluster with IAM/IRSA integration
- betterprogramming.pub: Create an Amazon EKS Fargate Cluster and Managed Node Group Using Terraform Serverless clusters and HashiCorpβs Terraform on AWS
- azapril.dev: Deploying a LogicApp with Terraform (Bonus: in an AzDO pipeline)
- k21academy.com: Automate AWS Virtual Machine using Terraform β Creation Demo
- fsgeorgee.medium.com: Growing out of Heroku to Terraform, Docker and AWS
- StarpTech/k-andy This terraform module will install a High Availability K3s Cluster with Embedded DB in a private network on Hetzner Cloud.
- adamtheautomator.com: How To Build a Database Instance with Terraform and AWS RDS
- BishopFox/iam-vulnerable Use Terraform to create your own vulnerable by design AWS IAM privilege escalation playground. IAM Vulnerable uses the Terraform binary and your AWS credentials to deploy over 250 IAM resources into your selected AWS account. Within minutes, you can start learning how to identify and exploit vulnerable IAM configurations that allow for privilege escalation.
- betterprogramming.pub: Automate and Configure Your RDS Database With Terraform π Execute post-deployment scripts based on your needs
- middlewareinventory.com: Terraform Create Multiple EC2 with different Configs β for_each and count together
- the-tech-guy.in: Automating LAMP deployment using Terraform and Ansible
- betterprogramming.pub: All Hail the Monolith β Celebrating the Verbosity of the Unified Architecture in Terraform
- faun.pub: AWS ECS Blue/Green Deployment Setup Using Terraform
- medium.com/@cyber-security: [DevOps] 01 - Example project with Terraform
- aws.plainenglish.io: Creating a custom EC2 module using Terraform
- medium.com/@zeloygabri: Deploying 2-Tier AWS Architecture using Terraform
- christopher-lawshe.medium.com: Building infrastructure with Terraform: EC2, Jenkins, S3 and more
- dev.to: Creating a Rest API with Infrastructure as Code (Terraform) & Serverless (Lambda + Python) - Part 2 CI/CD
- towardsaws.com: How to Deploy Two-Tier AWS Architecture with Terraform?
- blog.awsfundamentals.com: Using S3 with Terraform
- devopscube.com/terraform-aws-rds Terraform AWS RDS Provisioning Tutorial
- techcommunity.microsoft.com: Create an Azure OpenAI, LangChain, ChromaDB, and Chainlit Chat App in Container Apps using Terraform | Paolo Salvatori
- itnext.io: Automate Kubernetes Monitoring with Terraform and Datadog
- mahira-technology.medium.com: Automating AWS CodePipeline Setup with Terraform: Streamline Your CI/CD Workflow
- patrickkoch.dev: Terraform on Azure with GitHub Copilot - Creating a Kubernetes Cluster and a Container Registry
- medium.com/@Tyler.Gallimore: Deploying Apache Web Server on AWS EC2 with Terraform and Docker
- github.com/venkateshk111/terraform-beginners-guide π
- https://github.com/chenjd/terraform-101 π This repository contains a series of examples and exercises designed to help you get started with Terraform. Whether you are a beginner or looking to refresh your skills, you will find valuable resources here to understand the basics of Terraform and its application in real-world scenarios.
Prometheus and Grafana
- docker-compose-tpg: Telegraf + Prometheus + Grafana Local Testing Environments Setup learning environment for Telegraf, Prometheus and Grafana with docker-compose. (include SNMP simulators).
- grafana.com: How Istio, Tempo, and Loki speed up debugging for microservices
- medium.com/geekculture: Monitoring your system with Docker + Grafana + Prometheus + Node
GitHub Actions
- linkedin: Test Automation - How To Build a CI/CD Pipeline Using Pytest and GitHub Actions
- github.com/major/imagebuilder-containerized Image Builder in Github Actions building a CentOS Stream image, uploading it to S3, and importing it into EC2 – all from within a CentOS Stream container.
- docs.microsoft.com: Build and deploy applications to Azure by using GitHub Actions π
- itnext.io: Github: Github Actions overview and ArgoCD deployment example
- debianmaster/actions-k3s Github action for spinning up local k3s instance and running kubectl commands
- judebantony.github.io: DevSecOps with GitHub Action and SaaS Tools CICD Using GitHub Action and Harness
- codeproject.com: Making a Simple Data Pipeline Part 4: CI/CD with GitHub Actions
- levelup.gitconnected.com: GitOps: CI/CD using GitHub Actions and ArgoCD on Kubernetes Deploying Helm Charts on AWS EKS Cluster using ArgoCD and GitOps.
- freecodecamp.org: How to Setup a CI/CD Pipeline with GitHub Actions and AWS
- nicwortel.nl: Continuous deployment to Kubernetes with GitHub Actions In this article, you will learn how to use GitHub Actions to automatically test, build and deploy your Docker images to Kubernetes on every commit to the main branch
- medium.com/geekculture: GitOps β Github Actions K8s Deploy Workflow
- eggboy.medium.com: CI/CD Java apps securely to Azure Kubernetes Service with GitHub Action β Part 1
- github.com/GitHubSecurityLab/actions-permissions: GitHub token permissions Monitor and Advisor actions GitHub token permissions Monitor and Advisor actions
- thomasthornton.cloud: If, elseif or else in GitHub Actions
- kaleshreya907.medium.com: GitHub Actions: Netflix Deployment
- medium.com/@ebonyymonae: Github Actions and Automation
- levelup.gitconnected.com: GitHub Actions, self-hosted runners on Amazon EKS & spot instances How to spin up ephemeral runners in Kubernetes.
- medium.com/@eduardo854: Building Your GitOps Pipeline with GitHub Actions, DockerHub, and Helm Repository
- dev.to/aws-builders: From Scratch: OIDC Providers
RedHat GitHub Actions
Red Hat Process Automation Manager
API Testing and Postman
- developers.redhat.com: Automated API testing for the KIE Server
- github.com/microsoft/azure-digital-twins-postman-samples The repo contains a single postman_collection.json file that contains a postman collection of requests to the Azure Digital Twins APIs. Currently the focus of the collection is on on the data plan and includes Models, Query, and Twins.
OpenTelemetry
- blog.devgenius.io: Running the OpenTelemetry Demo App in Kubernetes
- itnext.io: OpenTelemetry β Understanding SLI and SLO with OpenTelemetry Demo
- devops.com: Measuring the Progress of the OpenTelemetry Project