github.com/pulumi/terraform@v1.4.0/website/docs/cli/plugins/index.mdx (about) 1 --- 2 page_title: Managing Plugins - Terraform CLI 3 description: >- 4 Commands to install, configure, and show information about providers. Also 5 commands to reduce install effort in air-gapped environments. 6 --- 7 8 # Managing Plugins 9 10 Terraform relies on plugins called "providers" in order to manage various types 11 of resources. (For more information about providers, see 12 [Providers](/language/providers) in the Terraform 13 language docs.) 14 15 -> **Note:** Providers are the only plugin type most Terraform users interact with. Terraform also supports third-party provisioner plugins, but 16 we discourage their use. 17 18 Terraform downloads and/or installs any providers 19 [required](/language/providers/requirements) by a configuration 20 when [initializing](/cli/init) a working directory. By default, 21 this works without any additional interaction but requires network access to 22 download providers from their source registry. 23 24 You can configure Terraform's provider installation behavior to limit or skip 25 network access, and to enable use of providers that aren't available via a 26 networked source. Terraform also includes some commands to show information 27 about providers and to reduce the effort of installing providers in airgapped 28 environments. 29 30 ## Configuring Plugin Installation 31 32 Terraform's configuration file includes options for caching downloaded plugins, 33 or explicitly specifying a local or HTTPS mirror to install plugins from. For 34 more information, see [CLI Config File](/cli/config/config-file). 35 36 ## Getting Plugin Information 37 38 Use the [`terraform providers`](/cli/commands/providers) command to get information 39 about the providers required by the current working directory's configuration. 40 41 Use the [`terraform version`](/cli/commands/version) command (or 42 `terraform -version`) to show the specific provider versions installed for the 43 current working directory. 44 45 Use the [`terraform providers schema`](/cli/commands/providers/schema) command to 46 get machine-readable information about the resources and configuration options 47 offered by each provider. 48 49 ## Managing Plugin Installation 50 51 Use the [`terraform providers mirror`](/cli/commands/providers/mirror) command to 52 download local copies of every provider required by the current working 53 directory's configuration. This directory will use the nested directory layout 54 that Terraform expects when installing plugins from a local source, so you can 55 transfer it directly to an airgapped system that runs Terraform. 56 57 Use the [`terraform providers lock`](/cli/commands/providers/lock) command 58 to update the lock file that Terraform uses to ensure predictable runs when 59 using ambiguous provider version constraints.