mirror of
				https://github.com/optim-enterprises-bv/homelab.git
				synced 2025-10-31 01:47:53 +00:00 
			
		
		
		
	feat(init): Initial commit
This commit is contained in:
		
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -27,3 +27,5 @@ override.tf.json | ||||
|  | ||||
| # Include tfplan files to ignore the plan output of command: terraform plan -out=tfplan | ||||
| # example: *tfplan* | ||||
|  | ||||
| .idea | ||||
|   | ||||
							
								
								
									
										8
									
								
								COMPONENTS.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								COMPONENTS.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| kubespray | ||||
| Argo autopilot | ||||
|  | ||||
| Traefik | ||||
| cert-manager? | ||||
| ArgoCD | ||||
| Prometheus | ||||
| Grafana | ||||
							
								
								
									
										1
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| A Terraform script to provision a Kubernetes Cluster with stuff | ||||
							
								
								
									
										1
									
								
								RESOURCES.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								RESOURCES.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/guides/getting-started | ||||
							
								
								
									
										63
									
								
								main.tf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										63
									
								
								main.tf
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,63 @@ | ||||
| terraform { | ||||
|   required_providers { | ||||
|     kubernetes = { | ||||
|       source  = "hashicorp/kubernetes" | ||||
|       version = ">= 2.0.0" | ||||
|     } | ||||
|   } | ||||
| } | ||||
| provider "kubernetes" { | ||||
|   config_path = "~/.kube/config" | ||||
| } | ||||
| resource "kubernetes_namespace" "test" { | ||||
|   metadata { | ||||
|     name = "nginx" | ||||
|   } | ||||
| } | ||||
| resource "kubernetes_deployment" "test" { | ||||
|   metadata { | ||||
|     name      = "nginx" | ||||
|     namespace = kubernetes_namespace.test.metadata.0.name | ||||
|   } | ||||
|   spec { | ||||
|     replicas = 2 | ||||
|     selector { | ||||
|       match_labels = { | ||||
|         app = "MyTestApp" | ||||
|       } | ||||
|     } | ||||
|     template { | ||||
|       metadata { | ||||
|         labels = { | ||||
|           app = "MyTestApp" | ||||
|         } | ||||
|       } | ||||
|       spec { | ||||
|         container { | ||||
|           image = "nginx" | ||||
|           name  = "nginx-container" | ||||
|           port { | ||||
|             container_port = 80 | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| resource "kubernetes_service" "test" { | ||||
|   metadata { | ||||
|     name      = "nginx" | ||||
|     namespace = kubernetes_namespace.test.metadata.0.name | ||||
|   } | ||||
|   spec { | ||||
|     selector = { | ||||
|       app = kubernetes_deployment.test.spec.0.template.0.metadata.0.labels.app | ||||
|     } | ||||
|     type = "NodePort" | ||||
|     port { | ||||
|       node_port   = 30201 | ||||
|       port        = 80 | ||||
|       target_port = 80 | ||||
|     } | ||||
|   } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 Vegard Hagen
					Vegard Hagen