Перейти к содержимому

Установка

Чтобы установить Terraform:

Актуальную версию бинарного файла можно скачать с официального сайта.

Внимание

Официальный сайт Terraform может быть недоступен на территории РФ. При необходимости пользуйтесь зеркалами.

  • Linux, MacOS
  • Windows
  1. Скачайте нужную версию бинарного файла Terraform:

    bash
    wget <ссылка на скачивание бинарного файла>
  2. Переместите бинарный файл в директорию /usr/local/bin:

    bash
    mv <путь к скачанному бинарному файлу> /usr/local/bin
  3. Добавьте путь к бинарному файлу в переменную PATH:

    bash
    export PATH=$PATH:/usr/local/bin/terraform
  4. Проверьте корректность установки:

    bash
    terraform -v

    Если Terraform был установлен корректно, в выводе этой команды вы получите информацию о текущей версии.

  • Linux (snap)
  • MacOS (Homebrew)
  • Windows (chocolatey)
  1. Если у вас нет snap, установите его.

  2. Выполните команду:

    bash
    sudo snap install terraform --classic
  1. Создайте файл ~/.terraformrc:

    • Linux, MacOS
    • Windows
    bash
    touch ~/.terraformrc
  2. Добавьте в файл ~/.terraformrc следующий блок:

    hcl
    provider_installation {
    network_mirror {
    url = "https://storage.mwsapis.ru/mws-terraform/",
    include = ["registry.terraform.io/mws-cloud/*"]
    }
    direct {
    exclude = ["registry.terraform.io/mws-cloud/*"]
    }
    }
  3. Укажите настройки провайдера либо в начале файла main.tf, либо в отдельном конфигурационном файле:

    hcl
    provider "mws" {
    zone = "ru-central1-a"
    project = <имя проекта>
    }

    Здесь:

    • zone — зона, в которой будут создаваться ресурсы;
    • project — имя проекта, в котором будут создаваться ресурсы.
  4. Укажите, какой провайдер нужен для работы с ресурсами:

    hcl
    terraform {
    required_providers {
    mws = {
    source = "mws-cloud/mws"
    }
    }
    required_version = ">= 1.11"
    }

    Здесь:

    • mws — имя провайдера;
    • source — адрес провайдера в Terraform Registry;
    • version — версия провайдера.

    Блок с информацией о провайдере можно добавить как в файл main.tf, так и сохранить в отдельном файле.