目前,这里的云运行环境文档向您展示了如何将单个秘密卷挂载到云运行服务的示例。
template {
spec {
containers {
image = "gcr.io/cloudrun/hello"
volume_mounts {
name = "a-volume"
mount_path = "/secrets"
}
}
volumes {
name = "a-volume"
secret {
secret_name = google_secret_manager_secret.secret.secret_id
default_mode = 292 # 0444
items {
key = "1"
path = "my-secret"
mode = 256 # 0400
}
}
}
}
}
我已经尝试添加多个volumes
和secret
块,但这将错误地说只允许1。
我也试图通过文档查找多个卷的一般示例,但没有这样的示例存在。
对于那些想知道2022年的人,因为文档仍然有些不清楚:通过重复条目(假设还有次要秘密条目),可以在Cloud Run的多个挂载点下挂载多个秘密:
spec {
containers {
image = "gcr.io/cloudrun/hello"
volume_mounts {
name = "a-volume"
mount_path = "/secrets"
}
volume_mounts {
name = "secondary-volume"
mount_path = "/somewhere-else"
}
}
volumes {
name = "a-volume"
secret {
secret_name = google_secret_manager_secret.secret.secret_id
default_mode = 292 # 0444
items {
key = "1"
path = "my-secret"
mode = 256 # 0400
}
}
}
volumes {
name = "secondary-volume"
secret {
secret_name = google_secret_manager_secret.secondary_secret.secret_id
default_mode = 292 # 0444
items {
key = "1"
path = "my-secondary-secret"
mode = 256 # 0400
}
}
}
}
在地形文档中你可以看到:"规格块支持:......volumes—(可选)Volume表示容器中的命名卷。结构女儿;
您需要在spec上下文中使用volume标签。这样的
spec {
containers {
volume_mounts {
mount_path = "/secrets"
name = "secret"
}
}
**volumes {
name = "secret"
secret {
secret_name = "secret name"
}
}**
}