INTEGRITY Dokumentace

1: Inicializace Terraformu

Tento návod vám ukáže, jak začít s Terraformem. Právě jste si zaregistrovali doménu (example.com) na Cloudflare, aby bylo možné vše spravovat v Terraformu, a nyní vytvoříte záznam DNS, který směruje www.example.com na webový server na adrese 203.0.113.10.

Než začnete, ujistěte se, že máte:

1. Vytvořte svou konfiguraci

Vytvořte soubor s názvem main.tf, přičemž doplníte vlastní hodnoty pro API token, ID zóny, ID účtu, a doména:

terraform {
  required_providers {
    cloudflare = {
      source  = "cloudflare/cloudflare"
      version = "~> 5"
    }
  }
}

provider "cloudflare" {
  api_token = "<YOUR_API_TOKEN>"
}

variable "zone_id" {
  default = "<YOUR_ZONE_ID>"
}

variable "account_id" {
  default = "<YOUR_ACCOUNT_ID>"
}

variable "domain" {
  default = "<YOUR_DOMAIN>"
}

resource "cloudflare_dns_record" "www" {
  zone_id = "<YOUR_ZONE_ID>"
  name    = "www"
  content = "203.0.113.10"
  type    = "A"
  ttl     = 1
  proxied = true
  comment = "Domain verification record"
}

2. Inicializace a plán

Inicializujte Terraform a stáhněte poskytovatele Cloudflare:

terraform init

Zkontrolujte, co bude vytvořeno:

terraform plan

Terraform used the selected providers to generate the following execution plan. Resource actions are
indicated with the following symbols:
  + create

Terraform will perform the following actions:

  # cloudflare_dns_record.www will be created
  + resource "cloudflare_dns_record" "www" {
      + comment             = "Domain verification record"
      + comment_modified_on = (known after apply)
      + content             = "203.0.113.10"
      + created_on          = (known after apply)
      + id                  = (known after apply)
      + meta                = (known after apply)
      + modified_on         = (known after apply)
      + name                = "www"
      + proxiable           = (known after apply)
      + proxied             = true
      + settings            = (known after apply)
      + tags                = (known after apply)
      + tags_modified_on    = (known after apply)
      + ttl                 = 1
      + type                = "A"
      + zone_id             = "<YOUR_ZONE_ID>"
    }

Plan: 1 to add, 0 to change, 0 to destroy.

3. Použijte a ověřte

Použijte svou konfiguraci:

terraform apply

Typ yes po zobrazení výzvy.

Terraform used the selected providers to generate the following execution plan. Resource actions are
indicated with the following symbols:
  + create

Terraform will perform the following actions:

  # cloudflare_dns_record.www will be created
  + resource "cloudflare_dns_record" "www" {
      + comment             = "Domain verification record"
      + comment_modified_on = (known after apply)
      + content             = "203.0.113.10"
      + created_on          = (known after apply)
      + id                  = (known after apply)
      + meta                = (known after apply)
      + modified_on         = (known after apply)
      + name                = "www"
      + proxiable           = (known after apply)
      + proxied             = true
      + settings            = (known after apply)
      + tags                = (known after apply)
      + tags_modified_on    = (known after apply)
      + ttl                 = 1
      + type                = "A"
      + zone_id             = "<YOUR_ZONE_ID>"
    }

Plan: 1 to add, 0 to change, 0 to destroy.

Do you want to perform these actions?
  Terraform will perform the actions described above.
  Only 'yes' will be accepted to approve.

  Enter a value: yes

cloudflare_dns_record.www: Creating...
cloudflare_dns_record.www: Creation complete after 0s

Apply complete! Resources: 1 added, 0 changed, 0 destroyed.

Po vytvoření záznam DNS ověřte:

dig www.example.com

Otestujte odpověď webového serveru:

curl https://www.example.com
Hello, this is 203.0.113.10!

Chcete-li zobrazit úplné výsledky vrácené voláním API:

terraform show

Můžete také otevřít Cloudflare dashboard a přejít do části DNS > Záznamy stránce.

Přejděte na Domovská stránka účtu ↗