...
https://gist.github.com/ivaravko/501b4e8e5f1bc1bf5fecd149186b99b9
https://developer.hashicorp.com/terraform/tutorials/kubernetes/kubernetes-provider
Sample: main.tf
Code Block |
---|
|
# 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
Run plan to check for errors
Apply changes
Code Block |
---|
|
terraform apply |
Destroy changes applied
Code Block |
---|
|
terraform destroy |
code |
References