Zero-to-Production Pipeline
Deploy a .NET API to Azure with Terraform, GitHub Actions, and AKS
About This Project
Take a .NET API from code to production on Azure Kubernetes Service. Covers infrastructure as code with Terraform (AKS, PostgreSQL, Redis, Key Vault), multi-stage GitHub Actions CI/CD, Docker multi-stage builds, Helm chart packaging, and full monitoring with Azure Monitor + Prometheus.
What You'll Learn
Key Features
Setup Guide
Clone and configure
Clone the repo and configure your Azure settings.
git clone https://github.com/asmanasir/zero-to-production.git cd zero-to-production cp terraform/terraform.tfvars.example terraform/terraform.tfvars # Edit terraform.tfvars with your Azure subscription ID
Provision infrastructure with Terraform
Creates AKS cluster, ACR, PostgreSQL, Redis, and Key Vault.
cd terraform terraform init terraform plan terraform apply
Configure kubectl
Point kubectl at your new AKS cluster.
az aks get-credentials --resource-group rg-micromart --name aks-micromart
Running the Project
Push to main branch to trigger deployment
The GitHub Actions pipeline builds, tests, and deploys automatically.
git push origin main # Watch the Actions tab in GitHub # Deployment completes in ~5 minutes
Verify the deployment
Check all pods are running and get the public URL.
kubectl get pods -n production kubectl get services -n production # Get the external IP kubectl get ingress -n production
Project Info
Tech Stack
Prerequisites
- Azure subscription (free tier works for learning)
- Azure CLI installed and authenticated
- Terraform CLI installed
- kubectl installed
- Docker Desktop installed
Learnixo
Project Author
Covers the full 'Make It Production-Ready' and 'Scale & Optimize' sections of the .NET roadmap. This is what DevOps engineers and senior .NET developers are expected to set up.