{"id":22868425,"url":"https://github.com/xpdojo/terraform","last_synced_at":"2025-03-31T10:50:37.220Z","repository":{"id":138406732,"uuid":"516075161","full_name":"xpdojo/terraform","owner":"xpdojo","description":"Terraform is an open-source infrastructure as code software tool that enables you to safely and predictably create, change, and improve infrastructure.","archived":false,"fork":false,"pushed_at":"2023-04-05T09:56:25.000Z","size":141,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-06T15:53:25.116Z","etag":null,"topics":["hashicorp","hcl","terraform"],"latest_commit_sha":null,"homepage":"https://en.wikipedia.org/wiki/Terraform_(software)","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/xpdojo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-07-20T17:28:41.000Z","updated_at":"2023-02-19T14:14:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"ccbcbea8-9a25-47a3-ad54-6e8ec648829a","html_url":"https://github.com/xpdojo/terraform","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xpdojo%2Fterraform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xpdojo%2Fterraform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xpdojo%2Fterraform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xpdojo%2Fterraform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xpdojo","download_url":"https://codeload.github.com/xpdojo/terraform/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246458022,"owners_count":20780675,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hashicorp","hcl","terraform"],"created_at":"2024-12-13T12:34:28.635Z","updated_at":"2025-03-31T10:50:37.195Z","avatar_url":"https://github.com/xpdojo.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Terraform\n\n- [Terraform](#terraform)\n  - [Install](#install)\n    - [Ubuntu 22.04](#ubuntu-2204)\n    - [macOS Monterey](#macos-monterey)\n    - [Windows 11](#windows-11)\n  - [autocomplete](#autocomplete)\n  - [Usages](#usages)\n    - [Initializing Working Directories](#initializing-working-directories)\n    - [Writing and Modifying Terraform Code](#writing-and-modifying-terraform-code)\n    - [Provisioning Infrastructure](#provisioning-infrastructure)\n    - [Inspecting Infrastructure](#inspecting-infrastructure)\n  - [참조](#참조)\n\n## Install\n\n### Ubuntu 22.04\n\n```sh\nsudo apt-get update \u0026\u0026 sudo apt-get install -y gnupg software-properties-common\n```\n\n```sh\nwget -O- https://apt.releases.hashicorp.com/gpg | \\\n    gpg --dearmor | \\\n    sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg\n```\n\n```sh\ngpg --no-default-keyring \\\n    --keyring /usr/share/keyrings/hashicorp-archive-keyring.gpg \\\n    --fingerprint\n\n# rsa4096 2020-05-07\n# E8A0 32E0 94D8 EB4E A189  D270 DA41 8C88 A321 9F7B\n```\n\n```sh\necho \"deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] \\\n    https://apt.releases.hashicorp.com $(lsb_release -cs) main\" | \\\n    sudo tee /etc/apt/sources.list.d/hashicorp.list\n```\n\n```sh\nsudo apt update\n```\n\n```sh\nsudo apt-get install terraform\n```\n\n```sh\nsh\u003e terraform -v\nTerraform v1.2.9\non linux_amd64\n```\n\n### macOS Monterey\n\n```sh\nbrew tap hashicorp/tap\nbrew install hashicorp/tap/terraform\n```\n\n```sh\nbrew update\nbrew upgrade hashicorp/tap/terraform\n```\n\n### Windows 11\n\n```ps1\nchoco install terraform\n```\n\n## autocomplete\n\n아래 명령어 실행 후 쉘에 다시 접근한다.\n\n```sh\nterraform -install-autocomplete\n```\n\n## Usages\n\n```sh\nterraform -help\nterraform -help init\n```\n\n### Initializing Working Directories\n\n- [docs](https://www.terraform.io/cli/init)\n\n```sh\nterraform init\n```\n\n### Writing and Modifying Terraform Code\n\n- [docs](https://www.terraform.io/cli/code)\n\n`validate` 명령어는 `.tf` 코드를 검증한다.\n\n```sh\nterraform validate\n```\n\n`fmt` 명령어는 `.tf` 코드를 포맷팅한다.\n\n```sh\n# terraform fmt\nterraform fmt -diff -recursive\n```\n\n### Provisioning Infrastructure\n\n- [docs](https://www.terraform.io/cli/run)\n\n`plan` 명령어는 인프라에 적용할 변경 사항의 실행 계획을 생성합니다.\n현재 구성에 따라 리소스에 적용될 변경 사항의 미리보기를 보여줍니다.\n\n```sh\nterraform plan\n```\n\n`apply` 명령어는 Terraform 구성 파일에 설명된 대로 인프라에 변경 사항을 적용합니다.\n변경 사항에 따라 리소스를 생성, 수정 또는 삭제합니다.\n\n```sh\nterraform apply --auto-approve\n```\n\n`destroy` 명령어는 Terraform이 생성한 모든 리소스를 제거합니다.\n\n```sh\nterraform destroy --auto-approve\n```\n\n`state list` 명령어는 Terraform이 현재 상태 파일에서 관리하고 있는 모든 리소스를 나열합니다.\n\n`state show \u003cresource\u003e` 명령어는 Terraform이 상태 파일에서 관리하는 특정 리소스에 대한 자세한 정보를 표시합니다.\n\n```sh\nterraform state list\n```\n\n### Inspecting Infrastructure\n\n- [docs](https://www.terraform.io/cli/inspect)\n\n`graph` 명령어는 GraphViz를 활용해서 실행할 작업을 시각화한다.\n\n```sh\nsudo apt install graphviz\n```\n\n```sh\nterraform graph | dot -Tsvg \u003e graph.svg\n```\n\n## 참조\n\n- [Install Terraform](https://learn.hashicorp.com/tutorials/terraform/install-cli)\n- [Terraform CLI Documentation](https://www.terraform.io/cli)\n- [Variables and Outputs](https://www.terraform.io/language/values)\n- [테라폼(Terraform) 기초 튜토리얼](https://www.44bits.io/ko/post/terraform_introduction_infrastrucute_as_code) - 44bits\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxpdojo%2Fterraform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxpdojo%2Fterraform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxpdojo%2Fterraform/lists"}