gpt4 book ai didi

google-cloud-platform - 无法使用 Terraform 在 Cloud Run 上部署公共(public) API

转载 作者:行者123 更新时间:2023-12-04 01:02:51 25 4
gpt4 key购买 nike

Terraform 现在支持云运行,如文档所述 here ,
我正在尝试下面的示例代码。

resource "google_cloud_run_service" "default" {
name = "tftest-cloudrun"
location = "us-central1"
provider = "google-beta"

metadata {
namespace = "my-project-name"
}

spec {
containers {
image = "gcr.io/cloudrun/hello"
}
}
}

尽管它没有错误地部署示例 hello 服务,但当我访问自动生成的 URL 时,它返回 403(Forbidden) 响应。
是否可以使用 terraform 创建公共(public)云运行 api?

(当我使用 GUI 创建相同的服务时,GCP 在“身份验证”部分下提供“允许未经身份验证的调用”选项,但在 terraform 文档中似乎没有等效选项......)

enter image description here

最佳答案

只需将以下代码添加到您的 terraform 脚本中,即可公开访问

data "google_iam_policy" "noauth" {
binding {
role = "roles/run.invoker"
members = [
"allUsers",
]
}
}

resource "google_cloud_run_service_iam_policy" "noauth" {
location = google_cloud_run_service.default.location
project = google_cloud_run_service.default.project
service = google_cloud_run_service.default.name

policy_data = data.google_iam_policy.noauth.policy_data
}

您还可以找到 here

关于google-cloud-platform - 无法使用 Terraform 在 Cloud Run 上部署公共(public) API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57885584/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com