Актуальные релизы Terraform и инструкции по установке доступны на официальном сайте HashiCorp.
Если у вас возникли сложности при установке, создайте issue в репозитории Terraform на GitHub или напишите на discuss.hashicorp.com.
Ниже для удобства пользователей приведены способы установки Terraform на основные операционные системы. Эти инструкции могут потерять актуальность, поэтому при расхождениях рекомендуется руководствоваться инструкциями, опубликованными на официальном сайте.
Перед установкой
Выберите один из способов установки для своей ОС. Для новой установки используйте стабильный выпуск Terraform. Если вы работаете с существующим проектом, учитывайте принятую в нём версию Terraform и ограничение required_version, если оно задано.
Команды пакетных менеджеров ниже устанавливают доступную в выбранном репозитории версию. Если требуется определённый выпуск, скачайте его из каталога релизов Terraform и используйте ручную установку. Подробнее об ограничении версии см. в документации блока terraform.
При ручной установке выберите ZIP-архив для своей операционной системы и архитектуры процессора:
| Операционная система | Архитектура | Обозначение в архиве |
| Linux | x86-64 (Intel / AMD) | linux_amd64 |
| Linux | ARM64 | linux_arm64 |
| macOS | Intel x86-64 | darwin_amd64 |
| macOS | Apple Silicon | darwin_arm64 |
| Windows | x86-64 (Intel / AMD) | windows_amd64 |
| Windows | ARM64 | windows_arm64 |
Сборка windows_arm64 есть не во всех версиях Terraform. Если её нет, на Windows 11 с ARM64 можно использовать windows_amd64 под эмуляцией. Провайдеры должны поддерживать платформу установленного Terraform.
Для старой ОС выбирайте совместимый выпуск: ручная установка не отменяет требований Terraform к системе и архитектуре. Перед распаковкой проверьте архив, как описано ниже.
Если ресурсы HashiCorp недоступны
Если сайты загрузки или репозитории HashiCorp недоступны из вашей сети, в том числе из-за ограничений доступа из России, используйте ручную установку из зеркала Yandex Cloud: https://hashicorp-releases.yandexcloud.net/terraform/. Если ресурсы HashiCorp доступны, используйте обычные способы установки, приведённые ниже.
Ошибки HTTP 403 или 405 могут сопровождать ограничения доступа, но сами по себе не указывают на их причину. При недоступности соответствующего сервера HashiCorp установка через пакетный менеджер тоже может завершиться ошибкой: APT и DNF/YUM используют репозитории HashiCorp, а Homebrew и пакет Chocolatey загружают оттуда дистрибутивы.
Зеркало содержит ZIP-архивы для ручной установки и не заменяет адреса репозиториев в командах APT или DNF/YUM. Проверьте наличие нужной версии и платформы. Набор файлов может отличаться от официального каталога; Yandex Cloud также предупреждает о возможной недоступности зеркала. Файлы из зеркала проверяйте по той же процедуре, что и файлы с сайта HashiCorp.
Загрузка провайдера после установки Terraform
Если при terraform init недоступен реестр провайдеров HashiCorp, потребуется отдельно настроить источник пакетов провайдера. Зеркало ZIP-архивов Terraform эту задачу не решает. Yandex Cloud публикует отдельное зеркало провайдеров по адресу https://terraform-mirror.yandexcloud.net/. Используйте его, только если в нём есть нужная версия провайдера OpenStack для платформы установленного Terraform.
Настройте источник пакетов в файле ~/.terraformrc для Linux/macOS или %APPDATA%/terraform.rc для Windows и сохраните изменения перед выполнением terraform init. Если предыдущий запуск завершился ошибкой загрузки провайдера, после настройки повторите команду в каталоге проекта. Формат provider_installation и network_mirror описан в документации Terraform CLI. Учитывайте уже существующие настройки этого файла.
Проверка скачанного архива
Этот подраздел нужен при ручной установке из официального каталога или зеркала. Для примеров взята версия 1.16.5; это не требование использовать именно её. Замените номер версии и обозначение платформы в именах файлов на выбранные вами.
- Скачайте ZIP-архив, файл контрольных сумм и его подпись из каталога одного и того же релиза. Например, для Linux x86-64:
terraform_1.16.5_linux_amd64.zip
terraform_1.16.5_SHA256SUMS
terraform_1.16.5_SHA256SUMS.sig
Сохраните файлы в одной папке и откройте в ней терминал или PowerShell. Файл SHA256SUMS содержит контрольные суммы архивов для всех платформ этого выпуска. Не используйте список от другой версии. - Проверьте подпись файла контрольных сумм. Для этого нужна команда
gpgиз GnuPG. Если она недоступна, установите GnuPG: в Linux через пакетный менеджер вашей ОС, в macOS или Windows через подходящий дистрибутив со страницы загрузки GnuPG.
Скачайте публичный ключ HashiCorp и сохраните его в ту же папку какpgp-key.txt. Если сайт HashiCorp недоступен, скачайте ключ из профиля HashiCorp на Keybase и сохраните его с тем же именемpgp-key.txt. Импортируйте ключ и выведите отпечатки основного ключа и его подключей:gpg --import pgp-key.txt
gpg --fingerprint --fingerprint 34365D9472D7468F
Сравните отпечаток основного ключа с разделом "PGP public key" на странице безопасности HashiCorp. На дату актуализации документа он следующий:C874 011F 0AB4 0511 0D02 1055 3436 5D94 72D7 468F
Это ключ подписи релизов, отдельный от ключа Linux-репозиториев в разделе Debian / Ubuntu. Продолжайте только при совпадении отпечатка. Проверьте подпись:gpg --verify terraform_1.16.5_SHA256SUMS.sig terraform_1.16.5_SHA256SUMS
Должно появиться сообщение об успешной проверке подписи (Good signature) основным ключом HashiCorp или одним из его подключей. Предупреждение о неизвестном доверии к ключу само по себе не означает неверную подпись. При ошибке подписи или несовпадении отпечатка основного ключа не продолжайте установку до выяснения причины. Подробности приведены в руководстве HashiCorp.
В строкеusing RSA keyуказан идентификатор или отпечаток ключа подписи. Если это подключ, его отпечаток отличается от отпечатка основного ключа. СверяйтеPrimary key fingerprintс отпечатком выше. Если GPG не выводит эту строку, найдите ключ подписи в ранее выведенном списке: основной ключ обозначенpub, подключи -sub. Продолжайте установку, только если подпись принадлежит проверенному основному ключу или одному из его подключей.
Если GPG показывает, что срок основного ключа34365D9472D7468Fистёк 18 апреля 2026 года, заново скачайте актуальный файлpgp-key.txtпо одной из ссылок выше и повторите импорт. HashiCorp продлила срок этого ключа до 1 марта 2030 года, сохранив его отпечаток. После обновления повторите проверку подписи.
- Проверьте SHA-256 скачанного ZIP-архива.
Выполняйте команды в папке со скачанным ZIP-архивом и файлом SHA256SUMS, подпись которого уже проверена. Укажите точное имя своего архива. Если выбрана другая версия Terraform, замените её номер также в имени файла SHA256SUMS.
В Linux используйте следующие команды. Пример для AMD64:archive=terraform_1.16.5_linux_amd64.zip
awk -v name="archive"'2 == name || $2 == ("*" name)' \
terraform_1.16.5_SHA256SUMS | sha256sum -c -
В macOS используйте следующие команды. Пример для Apple Silicon:archive=terraform_1.16.5_linux_amd64.zip
awk -v name="archive"'2 == name || $2 == ("*" name)' \
terraform_1.16.5_SHA256SUMS | sha256sum -c -
Команды выбирают строку только для указанного архива и автоматически проверяют его сумму. При успехе появится строка с именем архива и результатом OK (или сообщением об успехе на языке системы). Результат FAILED, ошибка чтения файла или сообщение об отсутствии корректной строки контрольной суммы означают, что проверка не пройдена.
В Windows вставьте в PowerShell весь блок целиком. Пример для AMD64: при необходимости измените $version и обозначение платформы в $archive.& {
$ErrorActionPreference = "Stop"
$version = "1.16.5"
$archive = "terraform_${version}_windows_amd64.zip"
$sums = "terraform_${version}_SHA256SUMS"
$hash = (Get-FileHash -LiteralPath $archive -Algorithm SHA256).Hash
$pattern = "^$hash\s+\*?" + [regex]::Escape(archive)+""
if (Select-String -LiteralPath $sums -Pattern $pattern -Quiet) {
"SHA256 совпадает."
} else {
throw "SHA256 не совпадает или имя архива не найдено."
}
}
Сообщение "SHA256 совпадает." означает, что совпали и сумма, и полное имя архива. При несовпадении или отсутствии нужной строки блок выдаст ошибку. Ошибки чтения файлов также прерывают проверку.
Продолжайте установку только после успешной проверки. При расхождении не распаковывайте архив. Проверка суммы дополняет проверку подписи: сама по себе она не подтверждает подлинность скачанного списка SHA256SUMS.
Linux / macOS
Установка с использованием пакетных менеджеров
Debian / Ubuntu
Инструкция предназначена для Debian 12 и 13, Ubuntu 22.04 LTS, 24.04 LTS и 26.04 LTS. Наличие репозитория для своего выпуска можно проверить в каталоге HashiCorp APT. Если вашего выпуска там нет, используйте ручную установку совместимой версии Terraform.
Репозиторий HashiCorp является сторонним для APT, поэтому его GPG-ключ нужно вручную добавить в систему и проверить отпечаток до подключения репозитория. Проверка помогает подтвердить источник ключа; затем APT использует этот ключ для проверки подписи метаданных репозитория.
Если репозиторий HashiCorp уже подключён и apt update сообщает об ошибке его подписи или отсутствующем ключе, повторите шаги 3-5, затем снова выполните sudo apt update. Это относится именно к ошибке репозитория HashiCorp.
- Обновите список доступных системе пакетов:
sudo apt update
- Проверьте наличие и установите пакеты gnupg, ca-certificates, wget:
sudo apt install -y gnupg ca-certificates wget
Назначение пакетов следующее:gnupg- утилиты для шифрования и цифровой подписи (GnuPG).ca-certificates- набор доверенных корневых сертификатов для HTTPS.wget- консольная загрузка файлов по HTTP, HTTPS и FTP. - Скачайте и сохраните GPG-ключ HashiCorp:
wget -O- https://apt.releases.hashicorp.com/gpg | \
sudo gpg --yes --dearmor \
-o /usr/share/keyrings/hashicorp-archive-keyring.gpg
Если файл ключа уже существует, эта команда заменит его. На следующих шагах обязательно проверьте отпечаток сохранённого ключа. - Отобразите отпечаток GPG-ключа добавляемого APT-репозитория HashiCorp:
gpg --no-default-keyring \
--keyring /usr/share/keyrings/hashicorp-archive-keyring.gpg \
--fingerprint
Команда выведет сведения о ключе. Строка с последовательностью шестнадцатеричных символов ниже pub является отпечатком основного ключа. На дату актуализации документа HashiCorp публикует следующий отпечаток:D55C 0D1A C78A 8D81 26CB 631C FC9C A96A CA02 6560 - Сравните полученный отпечаток с актуальным значением на странице безопасности HashiCorp в разделе "Linux Package Checksum Verification". Продолжайте только при совпадении. Если значения отличаются, выясните причину расхождения: ключ мог быть обновлён после публикации инструкции.
- Добавьте репозиторий HashiCorp:
echo "deb [arch=$(dpkg --print-architecture) \
signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] \
https://apt.releases.hashicorp.com \
(./etc/os-release&&echo"{UBUNTU_CODENAME:-$VERSION_CODENAME}") main" | \
sudo tee /etc/apt/sources.list.d/hashicorp.list - Снова обновите список доступных системе пакетов:
sudo apt update
- Установите Terraform:
sudo apt install -y terraform
RHEL / CentOS / AlmaLinux / Rocky Linux / Amazon Linux
Инструкция ниже предназначена для RHEL 8, 9 и 10, CentOS Stream 9 и 10, AlmaLinux 8, 9 и 10, Rocky Linux 8, 9 и 10, Amazon Linux 2023, а также для существующих систем на Amazon Linux 2.
Актуальные варианты подключения репозитория описаны в руководстве HashiCorp по пакетам и в инструкции по установке Terraform.
Для AlmaLinux и Rocky Linux используется репозиторий HashiCorp для соответствующей основной версии RHEL. AlmaLinux и Rocky Linux совместимы с RHEL, но отдельно не перечислены в таблице поддерживаемых дистрибутивов HashiCorp. Если пакет недоступен для вашей версии или архитектуры, используйте ручную установку из ZIP-архива.
- Установите утилиты для управления репозиториями.
Для RHEL 8-10, AlmaLinux 8-10, Rocky Linux 8-10, CentOS Stream 9/10 и Amazon Linux 2023:sudo dnf install -y dnf-plugins-core
Для Amazon Linux 2:sudo yum install -y yum-utils - Добавьте официальный репозиторий HashiCorp.
Для RHEL 8-10, AlmaLinux 8-10, Rocky Linux 8-10 и CentOS Stream 9/10:sudo dnf config-manager --add-repo \
https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
Для Amazon Linux 2023:sudo dnf config-manager --add-repo \
https://rpm.releases.hashicorp.com/AmazonLinux/hashicorp.repo
Для Amazon Linux 2:sudo yum-config-manager --add-repo \
https://rpm.releases.hashicorp.com/AmazonLinux/hashicorp.repo - Установите Terraform.
Для RHEL 8-10, AlmaLinux 8-10, Rocky Linux 8-10, CentOS Stream 9/10 и Amazon Linux 2023:sudo dnf install terraform
Для Amazon Linux 2:sudo yum install terraform
Если менеджер пакетов предложит импортировать GPG-ключ HashiCorp, сравните показанный отпечаток с актуальным значением в разделе "Linux Package Checksum Verification" на странице безопасности HashiCorp (см. также раздел Debian / Ubuntu выше). Подтверждайте импорт только при совпадении. Если нужный ключ уже импортирован, повторный запрос может не появиться
Поддержка Amazon Linux 2 завершилась 30 июня 2026 года. Вариант установки для этой ОС оставлен для существующих систем. Если репозиторий или нужный пакет недоступен, используйте ручную установку совместимой версии Terraform из ZIP-архива.
Для RHEL 7, CentOS Linux 7 и 8 и CentOS Stream 8 используйте ручную установку совместимой версии Terraform. Эти выпуски не входят в приведённый выше набор актуальных вариантов подключения репозитория. Архивные пакеты HashiCorp доступны на странице HashiCorp Linux Package Archives.
Fedora
Установка через репозиторий подходит для выпусков Fedora, перечисленных в каталоге пакетов HashiCorp. На 26 октября 2026 года это Fedora 43 и 44. Если вашего выпуска там нет, используйте ручную установку совместимой версии Terraform.
Ниже приведены команды для DNF5. Его команда подключения репозитория отличается от команды DNF4 в разделе RHEL. Для управления репозиториями нужен пакет dnf5-plugins.
- Установите плагины DNF5 для управления репозиториями:
sudo dnf install -y dnf5-plugins - Добавьте официальный репозиторий HashiCorp:
sudo dnf config-manager addrepo \
--from-repofile=https://rpm.releases.hashicorp.com/fedora/hashicorp.repo
- Установите Terraform:
sudo dnf install terraform
Если DNF предложит импортировать GPG-ключ HashiCorp, подтвердите импорт только после сверки отпечатка со страницей безопасности HashiCorp, как описано в разделе RHEL. Если нужный ключ уже импортирован, запрос может не появиться.
Для выпусков без актуального репозитория HashiCorp
Для Fedora 40, 41 и 42, а также других выпусков этой группы выберите совместимую версию Terraform с учётом ограничений проекта, включая required_version, если оно задано. Скачайте ZIP-архив для Linux: linux_amd64 для x86-64 или linux_arm64 для ARM64. Проверьте и установите его по подразделу "Ручная установка дистрибутива", затем выполните terraform version. Источники загрузки и требования к архиву приведены в разделе "Перед установкой".
Архивные RPM-пакеты для старых выпусков Fedora также доступны в архиве пакетов HashiCorp для Fedora. Наличие пакета в архиве не означает, что для этой версии ОС продолжает работать текущий репозиторий или выпускаются новые пакеты.
Homebrew (macOS и Linux)
- Проверьте доступность Homebrew. Откройте терминал и выполните команду:
brew --version
Если команда выводит версию Homebrew, переходите к шагу 2.
Если Homebrew ещё не установлен, установите его по инструкции Homebrew, учитывая требования к версии ОС. Выполните команды из разделаNext stepsустановщика для настройкиPATH, затем повторитеbrew --version.
Если Homebrew уже установлен, но терминал не находит brew, проверьте настройку PATH по указаниям после установки и повторите проверку.
- Подключите репозиторий пакетов HashiCorp (tap):
brew tap hashicorp/tap - Установите Terraform:
brew install hashicorp/tap/terraform
Ручная установка дистрибутива
- Скачайте с официального сайта HashiCorp ZIP-архив для вашей операционной системы и архитектуры процессора. Если нужен определённый выпуск, выберите его в каталоге релизов. Если ресурсы HashiCorp недоступны, используйте зеркало Yandex Cloud при наличии нужного выпуска. Проверьте файлы по подразделу "Проверка скачанного архива".
- Выведите на экран список каталогов, в которых система ищет исполняемые файлы для запуска без указания полного пути:
echo "$PATH"
- Распакуйте скачанный архив с Terraform в доступную для записи папку. Выполните команду из папки с проверенным ZIP-архивом. Пример для версии 1.16.5 и Linux x86-64:
unzip terraform_1.16.5_linux_amd64.zip -d terraform-install
Замените имя ZIP-файла на скачанное. Например, для macOS на Apple Silicon оно оканчивается наdarwin_arm64.zip. В каталогеterraform-installпоявится исполняемый файлterraform; папка будет создана при распаковке.
Если командаunzipне найдена, установите одноимённый пакет. В Debian / Ubuntu используйтеsudo apt install unzip, в RHEL, AlmaLinux, Rocky Linux, Fedora и Amazon Linux 2023 используйтеsudo dnf install unzip, в Amazon Linux 2 используйте sudo yum install unzip. В macOS архив можно также распаковать двойным щелчком в Finder. - Перейдите в папку, куда распаковали архив. Для команды из предыдущего шага:
cd terraform-install
Если вы выбрали другой каталог или распаковали архив через графический интерфейс, укажите его фактический путь в командеcd.
- Установите флаг, разрешающий выполнение файла, и переместите файл в каталог из PATH.
chmod +x terraform
Например, если в выводе шага 2 есть/usr/local/bin, выполните:sudo mkdir -p /usr/local/bin
sudo mv terraform /usr/local/bin/terraform
Если выбран другой каталог изPATH, замените путь назначения. Команда sudo нужна для записи в системный каталог; для каталога, доступного вашему пользователю, её можно не использовать. ВPATHдолжен входить каталог с файлом, а не путь к самому файлуterraform.
Windows
Установка с помощью Chocolatey
- Проверьте доступность Chocolatey. Для этого откройте PowerShell от имени администратора и выполните команду:
choco --version
Если команда выводит версию Chocolatey, переходите к шагу 2.
Если Chocolatey ещё не установлен, установите его по официальной инструкции Chocolatey. После установки закройте PowerShell, снова откройте его от имени администратора и повторитеchoco --version.
Если Chocolatey уже установлен, но PowerShell не находитchoco, проверьте, что каталог сchoco.exeдобавлен в переменную Path, и повторите проверку в новом окне PowerShell от имени администратора.
- Установите Terraform:
choco install terraform -y
Пакет Terraform в Chocolatey поддерживается сообществом, что отмечено в документации HashiCorp.
Ручная установка дистрибутива
- Скачайте с официального сайта HashiCorp ZIP-архив для Windows. Для x86-64 выберите AMD64, для ARM64 учитывайте оговорку в разделе "Перед установкой". Если ресурсы HashiCorp недоступны, скачайте нужный архив из зеркала Yandex Cloud. Выполните действия из подраздела "Проверка скачанного архива".
- Распакуйте скачанный архив с Terraform в папку, доступную вам для записи. Например, используйте
C:\Terraform. В этой папке должен находиться файлterraform.exe. - Добавьте папку с файлом
terraform.exeв пользовательскую переменную Path. Для изменения переменных своей учётной записи права администратора не нужны. В Windows 10 и Windows 11 выполните следующие действия. - Нажмите "Пуск" (Start), введите "переменные среды" и выберите пункт для своей учётной записи: "Изменение переменных среды текущего пользователя" (Edit environment variables for your account). Откроется окно "Переменные среды" (Environment Variables).
- В верхнем блоке переменных пользователя (User variables) выберите "Path" и нажмите "Изменить..." (Edit...).
- Нажмите "Создать" (New). Введите
C:\Terraformили путь к выбранной вами папке с Terraform. - Подтвердите изменения кнопкой "OK" в обоих окнах.
- Закройте и заново откройте PowerShell, командную строку (CMD) или Windows Terminal, чтобы новый сеанс получил обновлённое значение
Path.
Проверка установки
Чтобы убедиться, что установка Terraform прошла успешно, откройте новый сеанс терминала или PowerShell и выполните команду:terraform version
Если установка прошла успешно, отобразятся версия Terraform и платформа. Если команда не найдена, проверьте, что каталог с исполняемым файлом входит в PATH, и повторно откройте терминал.
Если на компьютере установлено несколько копий Terraform, проверьте, какой файл запускается. В Linux и macOS используйте:command -v terraform
В PowerShell используйте:Get-Command terraform
Что дальше?
Когда Terraform установлен, вы можете настроить его аутентификацию в облачной инфраструктуре Сервер Молл Cloud, как описано в инструкции "Аутентификация в облачной инфраструктуре через Terraform".