dhebbie Godspride
dhebbie Godspride

Reputation: 25

Provider type mismatch Terraform

This is the configuration in my provider.tf file

terraform {
  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = "~> 5.0"
    }

    docker = {
      source = "kreuzwerker/docker"
      version = "3.0.2"
    }
  }
}


# Configuration for Docker
provider "docker" {
  alias = "kreuzwerker"
  registry_auth {
    address  = local.aws_ecr_url 
    username = data.aws_ecr_authorization_token.token.user_name
    password = data.aws_ecr_authorization_token.token.password
  }
  
}

After terraform init. I got an error message to reference in the module which I did here.

module "docker" {
    source            = "../childmodules/docker"
    providers  = {
        docker       = docker.kreuzwerker
    }
    region            = var.region
}

I got this error message instea

Error: Provider type mismatch
│ 
│   on main.tf line 41, in module "docker":
│   41:         docker       = docker.kreuzwerker
│ 
│ The local name "docker.kreuzwerker" in the root module represents provider "kreuzwerker/docker", but "docker" in module.docker represents "hashicorp/docker".
│ 
│ Each provider has its own distinct configuration schema and provider types, so this module's "docker" can be assigned only a configuration for hashicorp/docker, which is not required
│ by module.docker.
╵

d

Upvotes: 0

Views: 376

Answers (0)

Related Questions