terraform: «Ошибка: не удалось загрузить плагин»

#docker #terraform #terraform-provider-aws

#docker #terraform #terraform-provider-aws

Вопрос:

Выполнение команды terraform plan с изображением docker hashicorp приводит к этой ошибке:

  $ docker run -it -v `pwd`:/terrascripts  hashicorp/terraform plan /terrascripts
Unable to find image 'hashicorp/terraform:latest' locally
latest: Pulling from hashicorp/terraform
Digest: sha256:eab63752545a0295eedc1318da1d293126cce4689bcd4b139afe816da3f6fffb
Status: Downloaded newer image for hashicorp/terraform:latest

Error: Could not load plugin


Plugin reinitialization required. Please run "terraform init".

Plugins are external binaries that Terraform uses to access and manipulate
resources. The configuration provided requires plugins which can't be located,
don't satisfy the version constraints, or are otherwise incompatible.

Terraform automatically discovers provider requirements from your
configuration, including providers used in child modules. To see the
requirements and constraints, run "terraform providers".

Failed to instantiate provider "registry.terraform.io/hashicorp/aws" to obtain
schema: unknown provider "registry.terraform.io/hashicorp/aws"
 

Похоже, это похоже на эту проблему. Я использую рабочие пространства для ссылки на разные среды. И это происходит только при использовании terraform с изображением docker. При использовании двоичного файла он работает так, как ожидалось.

Есть ли способ преодолеть эту проблему при использовании образа docker hashicorp/terraform ?

Комментарии:

1. Как все прошло с проблемой?

2. Все еще выдает ошибку. Я проверю и удостоверюсь, что проблема решена, а затем отмечу ответ как решенный, если он действительно решил проблему.

3. решено? просто проверяю

4. Нет, не удалось заставить его работать.

Ответ №1:

Вы можете попробовать настроить рабочий каталог на terrascripts использование -w флага:

инициализация

 docker run -it -v `pwd`:/terrascripts -w /terrascripts  hashicorp/terraform init
 

план

 docker run -it -v `pwd`:/terrascripts -w /terrascripts  hashicorp/terraform plan
 

В зависимости от ваших настроек вам может потребоваться поработать над этим больше, чтобы предоставить действительные учетные данные aws.