{"id":30068,"date":"2022-05-17T16:10:08","date_gmt":"2022-05-17T16:10:08","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=30068"},"modified":"2023-01-11T02:01:07","modified_gmt":"2023-01-11T02:01:07","slug":"terraform-tutorial-with-google-cloud-create-single-vm-network","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/terraform-tutorial-with-google-cloud-create-single-vm-network\/","title":{"rendered":"Terraform Tutorial with Google Cloud &#8211; Create Single VM &#038; Network"},"content":{"rendered":"\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">provider <span class=\"hljs-string\">\"google\"<\/span> {\n  project = <span class=\"hljs-string\">\"{{YOUR GCP PROJECT}}\"<\/span>\n  region  = <span class=\"hljs-string\">\"us-central1\"<\/span>\n  zone    = <span class=\"hljs-string\">\"us-central1-c\"<\/span>\n}\n\nresource <span class=\"hljs-string\">\"google_compute_instance\"<\/span> <span class=\"hljs-string\">\"vm_instance\"<\/span> {\n  name         = <span class=\"hljs-string\">\"terraform-instance\"<\/span>\n  machine_type = <span class=\"hljs-string\">\"e2-micro\"<\/span>\n\n  boot_disk {\n    initialize_params {\n      image = <span class=\"hljs-string\">\"debian-cloud\/debian-9\"<\/span>\n    }\n  }\n\n  network_interface {\n    <span class=\"hljs-comment\"># A default network is created for all GCP projects<\/span>\n    network = google_compute_network.vpc_network.self_link\n    access_config {\n    }\n  }\n}\n\nresource <span class=\"hljs-string\">\"google_compute_network\"<\/span> <span class=\"hljs-string\">\"vpc_network\"<\/span> {\n  name                    = <span class=\"hljs-string\">\"terraform-network\"<\/span>\n  auto_create_subnetworks = <span class=\"hljs-string\">\"true\"<\/span>\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">\r\nresource <span class=\"hljs-string\">\"google_compute_instance\"<\/span> <span class=\"hljs-string\">\"default\"<\/span> {\r\n  name         = <span class=\"hljs-string\">\"test\"<\/span>\r\n  machine_type = <span class=\"hljs-string\">\"e2-medium\"<\/span>\r\n  zone         = <span class=\"hljs-string\">\"us-central1-a\"<\/span>\r\n\r\n  tags = &#91;<span class=\"hljs-string\">\"foo\"<\/span>, <span class=\"hljs-string\">\"bar\"<\/span>, <span class=\"hljs-string\">\"ramu\"<\/span>]\r\n\r\n  boot_disk {\r\n    initialize_params {\r\n      image = <span class=\"hljs-string\">\"debian-cloud\/debian-9\"<\/span>\r\n    }\r\n  }\r\n\r\n  network_interface {\r\n    network = <span class=\"hljs-string\">\"default\"<\/span>\r\n\r\n    access_config {\r\n      <span class=\"hljs-comment\">\/\/ Ephemeral public IP<\/span>\r\n    }\r\n  }\r\n\r\n  metadata = {\r\n    foo = <span class=\"hljs-string\">\"bar\"<\/span>\r\n  }\r\n\r\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[2],"tags":[],"class_list":["post-30068","post","type-post","status-publish","format-standard","hentry","category-uncategorised"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/30068","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=30068"}],"version-history":[{"count":2,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/30068\/revisions"}],"predecessor-version":[{"id":32466,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/30068\/revisions\/32466"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=30068"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=30068"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=30068"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}