Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

https://gist.github.com/ivaravko/501b4e8e5f1bc1bf5fecd149186b99b9

https://developer.hashicorp.com/terraform/tutorials/kubernetes/kubernetes-provider


Sample: main.tf

Code Block
titlemail.tf
# Configure Kubernetes provider and connect to the Kubernetes API server
provider "kubernetes" {
  config_path    = "~/.kube/config"
  config_context = "docker-desktop"
}

# Create an Nginx pod
resource "kubernetes_pod" "nginx" {
  metadata {
    name = "terraform-example"
    labels = {
      app = "nginx"
    }
  }

  spec {
    container {
      image = "nginx:1.23.2"
      name  = "example"
    }
  }
}

# Create an service
resource "kubernetes_service" "nginx" {
  metadata {
    name = "terraform-example"
  }
  spec {
    selector = {
      app = kubernetes_pod.nginx.metadata.0.labels.app
    }
    port {
      port        = 80
    }

    type = "NodePort"
  }

  depends_on = [
    kubernetes_pod.nginx
  ]
}


Initialize

Code Block
themeEmacs
terraform init


Run plan to check for errors

Code Block
themeEmacs
terraform plan


Apply changes

Code Block
themeEmacs
terraform apply


Destroy changes applied

code
Code Block
themeEmacs
terraform destroy

References

ReferenceURL
Terraform Homehttps://www.terraform.io
Terraform explained in 15 mins | Terraform Tutorial for Beginnershttps://www.youtube.com/watch?v=l5k1ai_GBDE
Complete Terraform Course - From BEGINNER to PRO! (Learn Infrastructure as Code)https://www.youtube.com/watch?v=7xngnjfIlK4