簡體   English   中英

如何為“gcr.io”驗證 terraform 雲中的 docker 提供商?

[英]how to authenticate the docker provider in terraform cloud for "gcr.io"?

我正在嘗試通過 terraform 部署我的雲運行服務,我一直在嘗試使用 docker 提供商登錄 gcr.io 並獲取 sha256 摘要以設置為容器映像。

我在 inte.net 上發現了一些例子,但沒有一個涉及身份驗證部分。 對於一般的雲交互,我正在使用在 terraform 雲中設置的 var.GOOGLE_CREDENTIALS。

提供商塊:

data "google_client_config" "default" {}

provider "docker" {
  registry_auth {
    address  = "gcr.io"
    username = "oauth2accesstoken"
    password = data.google_client_config.default.access_token
  }
}
.......
required_providers {
    docker = {
      source  = "kreuzwerker/docker"
      version = "~> 2.9.0"
    }
  }

不幸的是,在嘗試申請時,我得到:

Error pinging Docker server: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
│
│   with provider["registry.terraform.io/kreuzwerker/docker"]

對此事的任何建議或文件/示例表示贊賞。

此錯誤表示 docker 守護程序未運行。 我很確定 terraform 雲中沒有 docker 守護進程。

將 docker 提供程序與 terraform 雲一起使用會拋出“無法連接到位於 unix:///var/run/docker.sock 的 Docker 守護進程”

看起來似乎可以與遠程 docker 進行交互,但這可能會稍微復雜一些。

為什么不使用GCP 數據源 也許這會給你所需要的:

data "google_container_registry_image" "foobar" {
  name = "your-image"
}
output "gcr_location" {
  value = data.google_container_registry_image.foobar.digest
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM