{"id":48513,"date":"2023-12-25T23:32:29","date_gmt":"2023-03-10T01:50:30","guid":{"rendered":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/"},"modified":"2024-05-04T15:23:18","modified_gmt":"2024-05-04T07:23:18","slug":"%e5%bc%80%e5%a7%8b-terraform","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/","title":{"rendered":"\u5f00\u59cb Terraform"},"content":{"rendered":"<h1>\u9996\u5148<\/h1>\n<p>\u5728\u4f7f\u7528Terraform\u4e4b\u524d\uff0c\u6574\u7406\u4e86\u4e00\u4e9b\u9700\u8981\u51c6\u5907\u7684\u4e8b\u9879\u3002\u5047\u8bbe\u73af\u5883\u4e3aWindows10\u3002<\/p>\n<h1>\u63d0\u524d\u5b89\u88c5VSCode<\/h1>\n<p>\u73b0\u5728\u53ef\u80fd\u5927\u5bb6\u90fd\u8ba4\u4e3a\u8fd9\u662f\u7406\u6240\u5f53\u7136\u7684\uff0c\u4f46\u9996\u5148\u8ba9\u6211\u4eec\u5b89\u88c5 \u201cVisual Studio Code\u201d\u3002<br \/>\n\u5343\u4e07\u4e0d\u8981\u7528\u50cf\u201c\u3055\u304f\u3089\u30a8\u30c7\u30a3\u30bf\u201d\u8fd9\u6837\u7684\u5de5\u5177\u6765\u7f16\u7a0b\u3002\uff08\u867d\u7136\u4f60\u53ef\u4ee5\u7528\uff0c\u4f46\u662f\u7528VSCode\u4f1a\u5927\u5927\u63d0\u9ad8\u6548\u7387\u548c\u65b9\u4fbf\u6027\uff09<\/p>\n<p>\u5b89\u88c5\u65b9\u6cd5\u975e\u5e38\u7b80\u5355\uff0c\u53ea\u9700\u8981\u8fd0\u884c\u5b89\u88c5\u7a0b\u5e8f\u5373\u53ef\uff0c\u6545\u5728\u6b64\u7701\u7565\u3002<\/p>\n<h1>\u5b89\u88c5 Terraform<\/h1>\n<p>\u6211\u4eec\u8d76\u7d27\u5b89\u88c5Terraform\u5427\u3002<\/p>\n<p>&nbsp;<\/p>\n<p>\u4eceWindows\u4e0a\u4e0b\u8f7dTerraform\u3002<br \/>\n\u5982\u679c\u4e0b\u8f7d\u6210\u529f\uff0c\u89e3\u538bzip\u6587\u4ef6\uff0c\u5c06exe\u6587\u4ef6\u653e\u5728\u4e00\u4e2a\u5408\u9002\u7684\u4f4d\u7f6e\u3002<br \/>\n\u6211\u4eec\u6682\u65f6\u5c06\u5176\u653e\u5728\u4ee5\u4e0b\u4f4d\u7f6e\u3002<\/p>\n<pre class=\"post-pre\"><code>C:\/\/terraform\/\r\n<\/code><\/pre>\n<p>\u53ea\u9700\u8981\u5c06\u8def\u5f84\u8bbe\u7f6e\u4e3a\u73af\u5883\u53d8\u91cf\u5373\u53ef\u3002<\/p>\n<pre class=\"post-pre\"><code>terraform version\r\n\r\nTerraform v1.2.9\r\non windows_amd64\r\n<\/code><\/pre>\n<p>\u53ea\u8981\u4ee5\u8fd9\u6837\u7684\u65b9\u5f0f\u663e\u793a\u5c31\u53ef\u4ee5\u4e86\u3002<\/p>\n<h1>\u5b89\u88c5tflint<\/h1>\n<p>\u8fd0\u884ctflint\uff0c\u53ef\u4ee5\u68c0\u67e5\u8bed\u6cd5\u548c\u53c2\u6570\u662f\u5426\u7b26\u5408\u89c4\u5219\u3002\u5f88\u65b9\u4fbf\u7684\u5de5\u5177\u3002<\/p>\n<p>&nbsp;<\/p>\n<p>\u8ba9\u6211\u4eec\u4ece\u8fd9\u91cc\u627e\u5230Windows\u7248\u672c\u5e76\u4e0b\u8f7d\u3002\u7136\u540e\u5c06\u5176\u653e\u5728\u548cTerraform.exe\u76f8\u540c\u7684\u76ee\u5f55\u4e2d\u3002\u5728\u7f16\u5199\u672c\u6587\u65f6\uff0cWindows\u7248\u7684\u6700\u65b0\u7248\u672c\u662fv0.40.0\u3002<\/p>\n<h1>\u5b89\u88c5VSCode\u7684\u6269\u5c55\u529f\u80fd<\/h1>\n<p>\u6211\u4eec\u5b89\u88c5\u4e00\u4e0bHashiCorp\u63d0\u4f9b\u7684\u6269\u5c55\u63d2\u4ef6\uff0c\u8fd9\u6837\u7f16\u5199Terraform\u4ee3\u7801\u4f1a\u66f4\u52a0\u7b80\u5355\u3002<\/p>\n<p>&nbsp;<\/p>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d856e913a08637a6b9286\/20-0.png\" alt=\"image.png\" \/><\/div>\n<h1>\u521b\u5efa\u4e00\u4e2a\u5408\u9002\u7684\u76ee\u5f55<\/h1>\n<p>\u4f7f\u7528Terraform\u65f6\uff0c\u5173\u4e8e\u76ee\u5f55\u7ed3\u6784\u4eba\u4eec\u7684\u504f\u597d\u5404\u6709\u4e0d\u540c\uff0c\u4f46\u4e00\u822c\u6765\u8bf4\uff0c\u6211\u8ba4\u4e3a\u4ee5\u4e0b\u7684\u6784\u5efa\u65b9\u5f0f\u662f\u5408\u9002\u7684\u3002<\/p>\n<pre class=\"post-pre\"><code>-- terraform\r\n    -- env\r\n        -- dev\r\n            -- main.tf\r\n            -- variables.tf\r\n            \u2026\r\n        -- prod\r\n            -- main.tf\r\n            -- variables.tf\r\n            \u2026\r\n    -- module\r\n        -- service name(vnet\u306a\u3069)\r\n            -- main.tf\r\n            -- variables.tf\r\n            -- output.tf\r\n            \u2026\r\n        \u2026\r\n<\/code><\/pre>\n<p>\u8fd9\u6837\u505a\u7684\u8bdd\uff0c\u53ef\u4ee5\u4e3a\u6bcf\u4e2a\u73af\u5883\u6dfb\u52a0\u76f8\u5e94\u7684\u6a21\u5757\u5b9a\u4e49\u3002<br \/>\n\u55ef\uff0c\u5c31\u5148\u7b80\u5355\u5730\u6309\u539f\u6837\u521b\u5efa\u5427\uff01<\/p>\n<h1>\u8bd5\u7528\u4e00\u4e0b<\/h1>\n<p>\u6211\u5c06\u4f7f\u7528Terraform\u968f\u610f\u521b\u5efa\u4e00\u4e9b\u8d44\u6e90\u3002<br \/>\n\u7531\u4e8e\u6211\u7ecf\u5e38\u4f7f\u7528Azure\uff0c\u6240\u4ee5\u5728\u8fd9\u91cc\u6211\u5c06\u4f7f\u7528Azure\u63d0\u4f9b\u8005\u6765\u8fdb\u884c\u793a\u4f8b\u3002<br \/>\n\u6211\u5c06\u521b\u5efa\u4e00\u4e2a\u8d44\u6e90\u7ec4\uff0c\u5e76\u751f\u6210\u4e00\u4e2a\u865a\u62df\u7f51\u7edc\u3002<\/p>\n<p>\u8fd9\u91cc\u53ef\u4ee5\u53c2\u8003\u3002<\/p>\n<p>&nbsp;<\/p>\n<p>\u6211\u7acb\u5373\u5728dev\/main.tf\u6587\u4ef6\u4e2d\u7f16\u5199\u4ee5\u4e0b\u793a\u4f8b\u4ee3\u7801\u3002<\/p>\n<pre class=\"post-pre\"><code>\r\nterraform {\r\n  #  tflint\u30c6\u30b9\u30c8\u306e\u305f\u3081\u30b3\u30e1\u30f3\u30c8\u30a2\u30a6\u30c8\r\n  #  required_version = \"1.2.9\"\r\n  backend \"local\" {}\r\n  required_providers {\r\n    azurerm = {\r\n      source  = \"hashicorp\/azurerm\"\r\n      version = \"3.23.0\"\r\n    }\r\n  }\r\n}\r\n\r\nprovider \"azurerm\" {\r\n  features {}\r\n}\r\n\r\nresource \"azurerm_resource_group\" \"resource_group\" {\r\n  name     = \"rg_terraform-001\"\r\n  location = \"japaneast\"\r\n}\r\n\r\nresource \"azurerm_virtual_network\" \"vnet\" {\r\n  name                = \"vnet-terraform-dv-001\"\r\n  address_space       = [\"10.0.0.0\/16\"]\r\n  location            = azurerm_resource_group.resource_group.location\r\n  resource_group_name = azurerm_resource_group.resource_group.name\r\n\r\n}\r\n\r\n<\/code><\/pre>\n<p>\u8ba9\u6211\u4eec\u4ece\u547d\u4ee4\u63d0\u793a\u7b26\u4e0b\u8fd0\u884ctflint\u3002<\/p>\n<pre class=\"post-pre\"><code>tflint\r\n\r\n1 issue(s) found:\r\n\r\nWarning: terraform \"required_version\" attribute is required (terraform_required_version)\r\n\r\n  on  line 0:\r\n   (source code not available)\r\n\r\nReference: https:\/\/github.com\/terraform-linters\/tflint-ruleset-terraform\/blob\/v0.1.0\/docs\/rules\/terraform_required_version.md\r\n\r\n<\/code><\/pre>\n<p>\u88ab\u544a\u77e5\u8981\u6307\u5b9a\u4f7f\u7528\u7684Terraform\u7248\u672c\uff0c\u6709\u70b9\u751f\u6c14\u5462\u3002\u65e2\u7136\u786e\u8ba4\u9a8c\u8bc1\u901a\u8fc7\u4e86\uff0c\u6211\u4f1a\u5c06\u6ce8\u91ca\u53d6\u6d88\u3002<\/p>\n<p>\u5982\u679c\u5728Azure\u4e0a\u8fdb\u884c\u6d4b\u8bd5\uff0c\u8bf7\u5148\u5728\u6b64\u5904\u8fdb\u884caz login\u3002<br \/>\n\u8fd9\u6837\u4e00\u6765\uff0c\u5728Terraform\u4e2d\u4e0d\u9700\u8981\u8f93\u5165\u8ba4\u8bc1\u4fe1\u606f\u7b49\uff0c\u5b83\u4f1a\u4f7f\u7528az login\u65f6\u4f7f\u7528\u7684\u5e10\u6237\u4fe1\u606f\u6765\u6267\u884cTerraform\u3002<\/p>\n<p>\u9996\u5148<\/p>\n<pre class=\"post-pre\"><code>cd C:\/\/terraform\/env\/dev\r\nterraform init\r\n<\/code><\/pre>\n<p>\u8fdb\u884c\u6267\u884c\u2026<\/p>\n<pre class=\"post-pre\"><code>nitializing the backend...\r\n\r\nInitializing provider plugins...\r\n- Reusing previous version of hashicorp\/azurerm from the dependency lock file\r\n- Using previously-installed hashicorp\/azurerm v3.7.0\r\n\r\nTerraform has been successfully initialized!\r\n\r\nYou may now begin working with Terraform. Try running \"terraform plan\" to see\r\nany changes that are required for your infrastructure. All Terraform commands\r\nshould now work.\r\n\r\nIf you ever set or change modules or backend configuration for Terraform,\r\nrerun this command to reinitialize your working directory. If you forget, other\r\ncommands will detect it and remind you to do so if necessary.\r\n\r\n<\/code><\/pre>\n<p>\u56de\u590d\u5df2\u8fd4\u56de\u5e76\u6210\u529f\u521d\u59cb\u5316\u3002<\/p>\n<p>\u63a5\u4e0b\u6765\uff0c\u6211\u4eec\u6765\u6267\u884cTerraform plan\u3002<br \/>\n\u8fd9\u662f\u4e00\u4e2a\u7528\u4e8e\u6a21\u62df\u8fd0\u884c\u7684\u547d\u4ee4\u3002<\/p>\n<pre class=\"post-pre\"><code>terraform plan\r\n<\/code><\/pre>\n<p>\u6267\u884c\u7ed3\u679c<\/p>\n<pre class=\"post-pre\"><code>Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols:\r\n  + create\r\n\r\nTerraform will perform the following actions:\r\n\r\n  # azurerm_resource_group.resource_group will be created\r\n  + resource \"azurerm_resource_group\" \"resource_group\" {\r\n      + id       = (known after apply)\r\n      + location = \"japaneast\"\r\n      + name     = \"rg_terraform-001\"\r\n    }\r\n\r\n  # azurerm_virtual_network.vnet will be created\r\n  + resource \"azurerm_virtual_network\" \"vnet\" {\r\n      + address_space       = [\r\n          + \"10.0.0.0\/16\",\r\n        ]\r\n      + dns_servers         = (known after apply)\r\n      + guid                = (known after apply)\r\n      + id                  = (known after apply)\r\n      + location            = \"japaneast\"\r\n      + name                = \"vnet-terraform-dv-001\"\r\n      + resource_group_name = \"rg_terraform-001\"\r\n      + subnet              = (known after apply)\r\n    }\r\n\r\nPlan: 2 to add, 0 to change, 0 to destroy.\r\n\r\n<\/code><\/pre>\n<p>\u597d\u7684\uff0c\u7531\u4e8e\u8ba1\u5212\u987a\u5229\u901a\u8fc7\uff0c\u63a5\u4e0b\u6765\u6211\u4eec\u4f1a\u8fdb\u884c\u7533\u8bf7\u3002<\/p>\n<pre class=\"post-pre\"><code>terraform apply\r\n<\/code><\/pre>\n<pre class=\"post-pre\"><code>Do you want to perform these actions?\r\n  Terraform will perform the actions described above.\r\n  Only 'yes' will be accepted to approve.\r\n\r\n  Enter a value: yes\r\n\r\nazurerm_resource_group.resource_group: Creating...\r\nazurerm_resource_group.resource_group: Creation complete after 0s [id=\/subscriptions\/                \/resourceGroups\/rg_terraform-001]\r\nazurerm_virtual_network.vnet: Creating...\r\nazurerm_virtual_network.vnet: Creation complete after 4s [id=\/subscriptions\/                \/resourceGroups\/rg_terraform-001\/providers\/Microsoft.Network\/virtualNetworks\/vnet-terraform-dv-001]\r\n\r\nApply complete! Resources: 2 added, 0 changed, 0 destroyed.\r\n\r\n<\/code><\/pre>\n<p>\u662f\u7684\uff0c\u73b0\u5728\u8d44\u6e90\u7ec4\u548c\u865a\u62df\u7f51\u7edc\u5df2\u7ecf\u521b\u5efa\u5b8c\u6210\u4e86\u3002\u771f\u7b80\u5355\u554a\uff01<\/p>\n<h1>\u6700\u540e<\/h1>\n<p>\u8fd9\u662f\u4e00\u7bc7\u5173\u4e8e\u8fc8\u51fa\u7b2c\u4e00\u6b65\u7684\u6587\u7ae0\u3002\u63a5\u4e0b\u6765\uff0c\u6211\u8ba1\u5212\u5199\u4e00\u7bc7\u5173\u4e8e\u5982\u4f55\u5177\u4f53\u7f16\u5199Terraform\u7684\u6587\u7ae0\uff01<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u9996\u5148 \u5728\u4f7f\u7528Terraform\u4e4b\u524d\uff0c\u6574\u7406\u4e86\u4e00\u4e9b\u9700\u8981\u51c6\u5907\u7684\u4e8b\u9879\u3002\u5047\u8bbe\u73af\u5883\u4e3aWindows10\u3002 \u63d0\u524d\u5b89\u88c5VSCo [&hellip;]<\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-48513","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u5f00\u59cb Terraform - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/zh\/blog\/\u5f00\u59cb-terraform\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u5f00\u59cb Terraform\" \/>\n<meta property=\"og:description\" content=\"\u9996\u5148 \u5728\u4f7f\u7528Terraform\u4e4b\u524d\uff0c\u6574\u7406\u4e86\u4e00\u4e9b\u9700\u8981\u51c6\u5907\u7684\u4e8b\u9879\u3002\u5047\u8bbe\u73af\u5883\u4e3aWindows10\u3002 \u63d0\u524d\u5b89\u88c5VSCo [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/zh\/blog\/\u5f00\u59cb-terraform\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2023-03-10T01:50:30+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-05-04T07:23:18+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d856e913a08637a6b9286\/20-0.png\" \/>\n<meta name=\"author\" content=\"\u6e05, \u5b87\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u6e05, \u5b87\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/\",\"name\":\"\u5f00\u59cb Terraform - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\"},\"datePublished\":\"2023-03-10T01:50:30+00:00\",\"dateModified\":\"2024-05-04T07:23:18+00:00\",\"author\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/1a6ecd3d914d22a5ac32791ffc1fbd8e\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.silicloud.com\/zh\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u5f00\u59cb Terraform\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/\",\"name\":\"Blog - Silicon Cloud\",\"description\":\"\",\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/1a6ecd3d914d22a5ac32791ffc1fbd8e\",\"name\":\"\u6e05, \u5b87\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/4b2016c18459a605fc469c7566608f5686491baa112d0871ee613f61b7210565?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/4b2016c18459a605fc469c7566608f5686491baa112d0871ee613f61b7210565?s=96&d=mm&r=g\",\"caption\":\"\u6e05, \u5b87\"},\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/author\/qingyu\/\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/#local-main-organization-logo\",\"url\":\"\",\"contentUrl\":\"\",\"caption\":\"Blog - Silicon Cloud\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\u5f00\u59cb Terraform - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/zh\/blog\/\u5f00\u59cb-terraform\/","og_locale":"zh_CN","og_type":"article","og_title":"\u5f00\u59cb Terraform","og_description":"\u9996\u5148 \u5728\u4f7f\u7528Terraform\u4e4b\u524d\uff0c\u6574\u7406\u4e86\u4e00\u4e9b\u9700\u8981\u51c6\u5907\u7684\u4e8b\u9879\u3002\u5047\u8bbe\u73af\u5883\u4e3aWindows10\u3002 \u63d0\u524d\u5b89\u88c5VSCo [&hellip;]","og_url":"https:\/\/www.silicloud.com\/zh\/blog\/\u5f00\u59cb-terraform\/","og_site_name":"Blog - Silicon Cloud","article_published_time":"2023-03-10T01:50:30+00:00","article_modified_time":"2024-05-04T07:23:18+00:00","og_image":[{"url":"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d856e913a08637a6b9286\/20-0.png"}],"author":"\u6e05, \u5b87","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"\u6e05, \u5b87","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"2 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/","url":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/","name":"\u5f00\u59cb Terraform - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website"},"datePublished":"2023-03-10T01:50:30+00:00","dateModified":"2024-05-04T07:23:18+00:00","author":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/1a6ecd3d914d22a5ac32791ffc1fbd8e"},"breadcrumb":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.silicloud.com\/zh\/blog\/"},{"@type":"ListItem","position":2,"name":"\u5f00\u59cb Terraform"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website","url":"https:\/\/www.silicloud.com\/zh\/blog\/","name":"Blog - Silicon Cloud","description":"","inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/1a6ecd3d914d22a5ac32791ffc1fbd8e","name":"\u6e05, \u5b87","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/4b2016c18459a605fc469c7566608f5686491baa112d0871ee613f61b7210565?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4b2016c18459a605fc469c7566608f5686491baa112d0871ee613f61b7210565?s=96&d=mm&r=g","caption":"\u6e05, \u5b87"},"url":"https:\/\/www.silicloud.com\/zh\/blog\/author\/qingyu\/"},{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%bc%80%e5%a7%8b-terraform\/#local-main-organization-logo","url":"","contentUrl":"","caption":"Blog - Silicon Cloud"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/48513","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/comments?post=48513"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/48513\/revisions"}],"predecessor-version":[{"id":99120,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/48513\/revisions\/99120"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/media?parent=48513"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/categories?post=48513"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/tags?post=48513"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}