본문 바로가기

반응형

테라폼

테라폼을 사용하여 Docker 예제를 실행하는 방법 테라폼(Terraform)을 사용하여 Docker 예제를 실행하는 방법 테라폼을 사용하여 로컬 Docker 환경에 Nginx 웹 서버 컨테이너를 실행하는 간단한 예제를 다룰 것입니다. 1. 테라폼 설치 테라폼이 설치되어 있어야 합니다. 원도우 11에 테라폼을 설치하는 방법 2. 테라폼 파일 설정 새로운 디렉토리를 만들고 그 안에 테라폼 설정 파일인 main.tf 를 생성합니다. 해당 파일에 다음과 같이 작성합니다. terraformfordocker main.tf terraform { required_providers { docker = { source = "kreuzwerker/docker" version = "~> 3.0.1" } } } provider "docker" { host = "npipe://.. 더보기
원도우 11에 테라폼을 설치하는 방법 원도우 11에 테라폼(terraform)을 설치하는 방법 1. 테라폼 다운로드 테라폼을 공식 웹사이트(https://www.terraform.io/)에서 다운로드합니다. 다운로드 페이지에서는 여러 버전의 테라폼이 제공됩니다. 최신 버전을 선택하거나 원하는 버전을 선택하여 다운로드하세요. 다운로드 후에 압축을 해제하고 테라폼 실행 파일을 원하는 위치에 복사합니다. 2. 시스템 환경 변수에 추가 테라폼을 사용하기 위해 시스템 환경 변수에 설치된 테라폼 실행 파일 경로를 추가해야 합니다. 검색 또는 실행 창에서 "환경 변수 편집"을 검색하여 "시스템 환경 변수 편집" 창을 엽니다. "환경 변수" 버튼을 클릭합니다. "시스템 변수" 섹션에서 "Path" 변수를 찾고 편집을 클릭합니다. "새로 만들기"를 클릭하여.. 더보기
[url] terraform modules terraform modules providers - https://registry.terraform.io/browse/providers modules - https://registry.terraform.io/browse/modules Terraform Cloud https://app.terraform.io 더보기
terraform apply 명령어 terraform apply 명령어 terraform apply 명령어는 테라폼 구성 파일로 정의한 인프라스트럭처를 실제로 생성하거나 업데이트하는 데 사용되는 명령어입니다. terraform apply [옵션] terraform apply --auto-approve terraform apply --auto-approve 명령어는 테라폼으로 정의한 인프라스트럭처를 실제로 생성하거나 업데이트할 때, 변경 사항을 자동으로 승인하고 인터랙션 없이 실행하는 옵션을 포함한 명령어입니다. 일반적으로 terraform apply를 실행하면, 변경 사항을 확인하는 단계에서 사용자에게 변경 사항을 표시하고 직접 승인 여부를 묻게 됩니다. 이때 --auto-approve 옵션을 사용하면 이 과정을 건너뛰고, 테라폼이 자동으.. 더보기
테라폼(Terraform) 디버깅 활성화 테라폼(Terraform) 디버깅 활성화 테라폼 계획 출력 terraform plan 테라폼 디버스(debug) 화면 출력 TF_LOG=DEBUG terraform plan 테라폼 디버스(debug) 파일 출력(terraform-debug.log 파일에 저장) TF_LOG=DEBUG TF_LOG_PATH=/tmp/terraform-debug.log terraform plan tail -10f /tmp/terraform-debug.log $ tail -10f /tmp/terraform-debug.log 2021-05-18T14:52:31.226+0900 [WARN] plugin.stdio: received EOF, stopping recv loop: err="rpc error: code = Unavaila.. 더보기
[Terraform] 테라폼 인스턴스(private) 생성 테라폼 인스턴스(private) 생성 메인 모듈 $ vim main.tf #####레디스 서버 module "redisserver" { source = "../../../modules/ec2/instance/private/" prefix = module.vpc.out_prefix suffix = module.vpc.out_suffix env = module.vpc.out_env region = module.vpc.out_region instance_count = 1 name = "redis1" group_name = "redis" #aws_amis = "ami-0742b4e673072066f" instance_type = "t3a.medium" disk_size = "8" key_name = "keype.. 더보기
[Terraform] 테라폼 인스턴스(public) 생성 테라폼 인스턴스(public) 생성 메인 모듈 $ vim main.tf #####웹 서버 module "webserver" { source = "../../../modules/ec2/instance/" prefix = module.vpc.out_prefix suffix = module.vpc.out_suffix env = module.vpc.out_env region = module.vpc.out_region instance_count = 2 name = "web1" group_name = "web" #aws_amis = "ami-03ca998611da0fe12" instance_type = "t3a.medium" disk_size = "8" key_name = "keypem" subnet_id = mo.. 더보기
[Terraform] 테라폼 리소스 태그 지정(tags) -2 테라폼 리소스 태그 지정(tags) key_pair 편집 - key_pair 모듈 $ vim key_pair.tf ###keypair 생성 resource "aws_key_pair" "this" { count = var.create ? 1 : 0 key_name = var.key_name public_key = var.public_key lifecycle { ignore_changes = [ tags.CreatedDate ] } tags = merge( var.customer_tags, { Name = "${var.suffix}-rds01" } ) } vars.tf 편집 - key_pair 모듈 변수 $ vim vars.tf variable "customer_tags" {} main.tf 편집 - 메인 .. 더보기

728x90
반응형