VSCode 是 Terraform 开发的高效选择,关键在于选用官方 Terraform 插件、Prettier + prettier-plugin-terraform 格式化、GitLens 协作,配好 CLI 环境与 tfenv 版本管理,并建立含自动保存格式化、任务封装和敏感变量保护的稳定工作流。

VSCode 是 Terraform 开发的高效选择,关键在于选对插件、配好环境、形成稳定工作流。不需要复杂配置,但几个核心点没设好,写代码时就容易踩坑。
必备插件:语法支持 + 自动补全 + 格式化
装这几个插件就够用,不建议堆砌:
-
Terraform(HashiCorp 官方插件):提供语法高亮、基础补全、资源跳转、文档悬停提示;启用后自动识别
.tf和.tfvars文件 -
Prettier + Prettier Terraform Plugin:Prettier 本身不支持 Terraform,需额外安装
prettier-plugin-terraform(通过 npm 全局或项目本地安装),再在 VSCode 设置中指定 formatter 为 Prettier,就能一键格式化(Shift+Alt+F) - GitLens(非必须但强烈推荐):方便查看 tf 文件每次变更谁改了什么、为什么改,对协作和回溯特别有用
本地开发环境:绕过 CLI 依赖陷阱
VSCode 不运行 Terraform,它只是编辑器。真正执行 init/plan/apply 还得靠本地装好的 Terraform CLI。常见问题:
- 插件提示“Terraform not found”:检查系统 PATH 是否包含 terraform 可执行文件路径,Windows 用户注意是否用了 WSL 而 VSCode 在 Windows 下启动——此时需统一环境(推荐在 WSL 中启动 VSCode:
code .) - 多版本 Terraform 切换麻烦:用
tfenv(类比 nvm)管理版本,在项目根目录放.terraform-version,VSCode 插件会自动读取并提示匹配 - 变量未加载导致补全失效:确保
terraform init已成功执行,Provider 插件才能加载 schema 并提供准确补全
高效工作流:从写到检出的一站式习惯
把重复操作变成快捷键和小脚本,减少上下文切换:
- 用 VSCode 的 Tasks 功能封装常用命令:比如一键
terraform validate或terraform plan -out=plan.tfplan,绑定快捷键(如Ctrl+Shift+P→ “Tasks: Run Task”) - 开启 Auto Save + Format on Save:配合 Prettier 插件,保存即格式化,避免手抖忘格式导致 PR 被拒
- 用 Settings Sync 同步插件与设置:换机器或重装系统后,几秒恢复全套 Terraform 开发环境
- 敏感变量不硬编码:在
.gitignore中加入*.tfvars和terraform.tfstate*;用 VSCode 的 Environment Variables 功能(配合终端启动配置)注入临时变量,或搭配direnv自动加载.envrc
基本上就这些。插件不在多,在稳;工作流不在炫,在可重复。把 init、validate、format、plan 几个环节串顺了,日常开发就少一半干扰。










