5.2 KiB
layout | page_title | sidebar_current | description |
---|---|---|---|
downloads | APT Packages for Debian and Ubuntu | docs-cli-install-apt | The HashiCorp APT repositories contain distribution-specific Terraform packages for both Debian and Ubuntu systems. |
APT Packages for Debian and Ubuntu
The primary distribution packages for Terraform are .zip
archives containing
single executable files that you can extract anywhere on your system. However,
for easier integration with configuration management tools and other systematic
system configuration strategies, we also offer package repositories for
Debian and Ubuntu systems, which allow you to install Terraform using the
apt install
command or any other APT frontend.
If you are instead using Red Hat Enterprise Linux, CentOS, or Fedora, you might prefer to install Terraform from our Yum repositories.
-> Note: The APT repositories discussed on this page are generic HashiCorp repositories that contain packages for a variety of different HashiCorp products, rather than just Terraform. Adding these repositories to your system will, by default, therefore make a number of other non-Terraform packages available for installation. That might then mask some packages that are available for some HashiCorp products in the main Debian and Ubuntu package repositories.
Repository Configuration
The Terraform packages are signed using a private key controlled by HashiCorp, so in most situations the first step would be to configure your system to trust that HashiCorp key for package authentication. For example:
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
After registering the key, you can add the official HashiCorp repository to your system:
sudo apt-add-repository "deb [arch=$(dpkg --print-architecture)] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
The above command line uses the following sub-shell commands:
dpkg --print-architecture
to determine your system's primary APT architecture/ABI, such asamd64
.lsb_release -cs
to find the distribution release codename for your current system, such asbuster
,groovy
, orsid
.
apt-add-repository
usually automatically runs apt update
as part of its
work in order to fetch the new package indices, but if it does not then you
will need to so manually before the packages will be available.
To install Terraform from the new repository:
sudo apt install terraform
Supported Architectures
The HashiCorp APT server currently has packages only for the amd64
architecture, which is also sometimes known as x86_64
.
There are no official packages available for other architectures, such as
arm64
. If you wish to use Terraform on a non-amd64
system,
download a normal release .zip
file instead.
Supported Debian and Ubuntu Releases
The HashiCorp APT server currently contains release repositories for the following distribution releases:
- Debian 8 (
jessie
) - Debian 9 (
stretch
) - Debian 10 (
buster
) - Ubuntu 16.04 (
xenial
) - Ubuntu 18.04 (
bionic
) - Ubuntu 19.10 (
eoam
) - Ubuntu 20.04 (
focal
) - Ubuntu 20.10 (
groovy
)
No repositories are available for other Debian or Ubuntu versions or for
any other APT-based Linux distributions. If you add the repository using
the above commands on other systems then apt update
will report the
repository index as missing.
Terraform executables are statically linked and so they depend only on the Linux system call interface, not on any system libraries. Because of that, you may be able to use one of the above release codenames when adding a repository to your system, even if that codename doesn't match your current distribution release.
Over time we will change the set of supported distributions, including both adding support for new releases and ceasing to publish new Terraform versions under older releases.
Choosing Terraform Versions
The HashiCorp APT repositories contain multiple versions of Terraform, but
because the packages are all named terraform
it is impossible to install
more than one version at a time, and apt install
will default to selecting
the latest version.
It's often necessary to match your Terraform version with what a particular configuration is currently expecting. You can use the following command to see which versions are currently available in the repository index:
apt policy terraform
There may be multiple package releases for a particular Terraform version if
we need to publish an updated package for any reason. In that case, the
subsequent releases will have an additional suffix, like 0.13.4-2
. In these
cases the Terraform executable inside the package should be unchanged, but its
metadata and other contents may be different.
You can select a specific version to install by including it in the
apt install
command line, as follows:
sudo apt install terraform=0.14.0
If your workflow requires using multiple versions of Terraform at the same
time, for example when working through a gradual upgrade where not all
of your configurations are upgraded yet, we recommend that you use the
official release .zip
files instead of the APT packages, so you can install
multiple versions at once and then select which to use for each command you
run.