# KodeKloud: Beta Courses GitOps with FluxCD

## GitOps with FluxCD

### GitOps Overview

- [Course Introduction](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/GitOps-Overview/Course-Introduction/page.md): Learn to implement GitOps with FluxCD for streamlined Kubernetes deployments and continuous delivery in cloud-native environments.
- [GitOps Introduction](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/GitOps-Overview/GitOps-Introduction/page.md): This article explores how GitOps streamlines deployment and management of cloud-native applications using Git as the single source of truth.
- [GitOps Principles](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/GitOps-Overview/GitOps-Principles/page.md): This article explains the four foundational principles of GitOps for reliable, auditable, and automated application and infrastructure deployments.
- [GitOps vs DevOps](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/GitOps-Overview/GitOps-vs-DevOps/page.md): This article compares GitOps and DevOps, highlighting their differences in application delivery, deployment workflows, challenges, and benefits.

### Flux Overview

- [WhatWhyHow FluxCD](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Flux-Overview/WhatWhyHow-FluxCD/page.md): FluxCD is a project that helps teams adopt GitOps for Kubernetes deployment by automating synchronization between declared configurations and live cluster states.
- [FluxCD Concepts amp Terminology](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Flux-Overview/FluxCD-Concepts-amp-Terminology/page.md): This article provides an overview of FluxCDs core components and GitOps terminology.
- [FluxCD Features](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Flux-Overview/FluxCD-Features/page.md): This article explores the key features of FluxCD, a GitOps operator for automating Kubernetes deployments and managing cluster states.
- [FluxCD Architecture Part1](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Flux-Overview/FluxCD-Architecture-Part1/page.md): This article explores the high-level architecture of FluxCD and its core components within a Kubernetes cluster.
- [FluxCD Architecture Part2](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Flux-Overview/FluxCD-Architecture-Part2/page.md): This article explores the architecture of FluxCD, detailing its core controllers and their roles in implementing GitOps workflows on Kubernetes.
- [FluxCD Installation Options](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Flux-Overview/FluxCD-Installation-Options/page.md): Explore various installation methods for FluxCD and GitOps on Kubernetes, including prerequisites, CLI setup, bootstrapping, customization, and uninstallation.
- [DEMO FluxCD Installation](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Flux-Overview/DEMO-FluxCD-Installation/page.md): This guide covers the installation of FluxCD on a Kubernetes cluster using Docker Desktop and Visual Studio Code.

### Source and Kustomize Controller

- [Source Controller](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Source-and-Kustomize-Controller/Source-Controller/page.md): Flux’s Source Controller fetches artifacts from external sources and makes them available within your cluster for other controllers to consume.
- [DEMO Source Controller Git Manifest in Flux Repo](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Source-and-Kustomize-Controller/DEMO-Source-Controller-Git-Manifest-in-Flux-Repo/page.md): This guide explains how Flux’s Source Controller retrieves manifests from a Git repository and how the Kustomize Controller applies them to a Kubernetes cluster.
- [Kustomize Controller](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Source-and-Kustomize-Controller/Kustomize-Controller/page.md): The Kustomize Controller ensures cluster state matches desired Kubernetes manifests by validating, applying, monitoring, and optionally pruning resources.
- [DEMO Kustomize Controller Plain YAML Manifests in Different Repo](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Source-and-Kustomize-Controller/DEMO-Kustomize-Controller-Plain-YAML-Manifests-in-Different-Repo/page.md): This article explains how to configure FluxCD to deploy YAML manifests from a separate Git repository using Kustomize Controller.
- [DEMO Kustomize Controller Kustomize Overlay](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Source-and-Kustomize-Controller/DEMO-Kustomize-Controller-Kustomize-Overlay/page.md): This hands-on tutorial teaches applying Kustomize overlays using Flux CD, covering setup, resource creation, verification, and inspecting deployed Kubernetes resources.
- [Source Controller S3 Bucket](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Source-and-Kustomize-Controller/Source-Controller-S3-Bucket/page.md): Learn to use Flux CD’s Source Controller to fetch Kubernetes manifests from an S3-compatible bucket like MinIO.
- [DEMO Source Controller S3 Bucket](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Source-and-Kustomize-Controller/DEMO-Source-Controller-S3-Bucket/page.md): Leverage Flux’s Source Controller to fetch Kubernetes manifests from an S3-compatible store and deploy them via GitOps.

### Helm Controller and OCI Registry

- [HELM Controller](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Helm-Controller-and-OCI-Registry/HELM-Controller/page.md): This guide covers the Flux Helm Controller and its role in managing Helm charts within a GitOps workflow.
- [DEMO HELM Controller with Git as Source](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Helm-Controller-and-OCI-Registry/DEMO-HELM-Controller-with-Git-as-Source/page.md): This tutorial teaches deploying a Helm chart from a Git repository into a Kubernetes cluster using Flux’s Helm Controller.
- [DEMO HELM Controller with Helm Repository as Source](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Helm-Controller-and-OCI-Registry/DEMO-HELM-Controller-with-Helm-Repository-as-Source/page.md): This article explains how to automate the deployment of Helm artifacts using Fluxs Helm Controller and HelmRepository source.
- [What are OCI Artifacts](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Helm-Controller-and-OCI-Registry/What-are-OCI-Artifacts/page.md): This guide explains how OCI Artifacts streamline the storage and distribution of Kubernetes resources in a unified registry.
- [Source Controller OCI Repository](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Helm-Controller-and-OCI-Registry/Source-Controller-OCI-Repository/page.md): This guide explains how to use the Flux Source Controller to fetch resources from an OCI artifacts repository.
- [DEMO Push Kubernetes Manifest to OCI Registry](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Helm-Controller-and-OCI-Registry/DEMO-Push-Kubernetes-Manifest-to-OCI-Registry/page.md): This article explains how to package Kubernetes manifests as OCI artifacts and push them to GitHub Container Registry using Flux.
- [DEMO Push Helm Chart to OCI Registry](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Helm-Controller-and-OCI-Registry/DEMO-Push-Helm-Chart-to-OCI-Registry/page.md): Learn to package a Helm chart and publish it to the GitHub Container Registry using the OCI protocol.
- [DEMO Setting up the MySQL Database](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Helm-Controller-and-OCI-Registry/DEMO-Setting-up-the-MySQL-Database/page.md): This guide covers deploying a MySQL database on Kubernetes using Flux and Kustomize manifests.
- [DEMO Flux Pull and Deploy from OCI Registry](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Helm-Controller-and-OCI-Registry/DEMO-Flux-Pull-and-Deploy-from-OCI-Registry/page.md): This tutorial explains how to use Flux CD to pull container images from an OCI registry and deploy them to a Kubernetes cluster.

### Image Automation Controller

- [Image Automation Controller](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Image-Automation-Controller/Image-Automation-Controller/page.md): Flux’s Image Automation Controller automates updates of Kubernetes manifests with the latest container image tags by integrating with Git repositories and container registries.
- [DEMO Install Image Automation Controller](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Image-Automation-Controller/DEMO-Install-Image-Automation-Controller/page.md): This guide explains how to upgrade an existing Flux CD installation to include Image Reflector and Image Automation Controllers.
- [DEMO Initialize DockerHub](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Image-Automation-Controller/DEMO-Initialize-DockerHub/page.md): This article provides a walkthrough to connect Kubernetes deployment to Docker Hub and automate updates using Flux GitOps.
- [DEMO Image Automation Controller Repository](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Image-Automation-Controller/DEMO-Image-Automation-Controller-Repository/page.md): This tutorial demonstrates using Flux's ImageRepository to automate image tag fetching from Docker Hub.
- [DEMO Image Automation Controller Policy](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Image-Automation-Controller/DEMO-Image-Automation-Controller-Policy/page.md): This article explains how to use the ImagePolicy CRD in Flux to automatically select the latest image tag based on semantic versioning.
- [DEMO Image Automation Controller Update](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Image-Automation-Controller/DEMO-Image-Automation-Controller-Update/page.md): This article provides a hands-on guide to automate container image tag updates in Kubernetes using Fluxs ImageUpdateAutomation controller.

### Secret Management & Sign Verification

- [Bitnami Sealed Secrets](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Secret-Management-Sign-Verification/Bitnami-Sealed-Secrets/page.md): This guide explains managing Kubernetes secrets securely using Bitnami Sealed Secrets in a GitOps workflow with Flux.
- [DEMO Setup Bitnami Sealed](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Secret-Management-Sign-Verification/DEMO-Setup-Bitnami-Sealed/page.md): This guide explains deploying Bitnami Sealed Secrets with Flux CD and sealing Kubernetes Secrets for secure Git storage.
- [DEMO EncryptDecrypt Secret using Bitnami Sealed Secrets](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Secret-Management-Sign-Verification/DEMO-EncryptDecrypt-Secret-using-Bitnami-Sealed-Secrets/page.md): This guide explains how to secure Kubernetes Secrets using Bitnami Sealed Secrets with FluxCD and Kustomize for declarative management.
- [Mozilla SOPS](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Secret-Management-Sign-Verification/Mozilla-SOPS/page.md): Learn to use Mozilla SOPS with PGP to securely encrypt and manage Kubernetes secrets in Git repositories.
- [DEMO Mozilla SOPS Admin](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Secret-Management-Sign-Verification/DEMO-Mozilla-SOPS-Admin/page.md): This guide explains generating an OpenPGP key pair for use with Mozilla SOPS and FluxCD, including key management and secure cleanup.
- [DEMO Mozilla SOPS Developer](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Secret-Management-Sign-Verification/DEMO-Mozilla-SOPS-Developer/page.md): Learn to encrypt and manage Kubernetes secrets in Git using Mozilla SOPS with a PGP key and automate decryption with FluxCD.
- [Cosign OCI Artifacts](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Secret-Management-Sign-Verification/Cosign-OCI-Artifacts/page.md): Learn to sign and verify OCI artifacts using Cosign and Flux in this comprehensive guide.
- [DEMO Install Cosign](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Secret-Management-Sign-Verification/DEMO-Install-Cosign/page.md): This tutorial covers installing Cosign for signing OCI artifacts and configuring Flux CD for secure supply chain workflows.
- [DEMO Cosign OCI Artifacts](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Secret-Management-Sign-Verification/DEMO-Cosign-OCI-Artifacts/page.md): This guide covers signing and verifying OCI artifacts using Cosign and configuring Flux CD for deployment in Kubernetes.

### Notification Controller

- [Webhook Receiver](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Notification-Controller/Webhook-Receiver/page.md): This guide explains how to set up a Flux Notification Controller to trigger reconciliations via webhooks for Git repositories.
- [DEMO Webhook Receiver](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Notification-Controller/DEMO-Webhook-Receiver/page.md): This tutorial explains using FluxCD’s Notification Controller to trigger on-demand reconciliation of a GitRepository resource via GitHub webhooks.
- [Alerts amp Providers](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Notification-Controller/Alerts-amp-Providers/page.md): The article explains how to configure the Flux Notification Controller to send alerts from external sources to notification platforms like Slack.
- [DEMO Alerts amp Providers](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Notification-Controller/DEMO-Alerts-amp-Providers/page.md): This tutorial configures the Flux Notification Controller to send GitOps alerts to a Slack channel.

### Monitoring & User Interface

- [Flux Monitoring](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Monitoring-User-Interface/Flux-Monitoring/page.md): Learn to monitor FluxCD controllers with Prometheus and visualize metrics using Grafana, covering metrics exposure, auto-discovery, configuration, and dashboard creation.
- [DEMO Install Kube Prometheus Stack](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Monitoring-User-Interface/DEMO-Install-Kube-Prometheus-Stack/page.md): This tutorial teaches deploying the Kube Prometheus Stack on Kubernetes using Flux 2 GitOps components for monitoring with Prometheus and Grafana.
- [DEMO Monitor Flux using Prometheus Grafana](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Monitoring-User-Interface/DEMO-Monitor-Flux-using-Prometheus-Grafana/page.md): This guide explains how to integrate Prometheus with Flux v2 for monitoring and visualizing metrics in Grafana.
- [DEMO Flux User Interface](https://notes.kodekloud.com/docs/GitOps-with-FluxCD/Monitoring-User-Interface/DEMO-Flux-User-Interface/page.md): This guide explores two open-source graphical interfaces for managing Flux CD, enhancing observability and workflow efficiency.
