云 运行 部署使用上次修订的图像

Cloud Run deployment using image from last revision

我们需要使用以下 API method

将标签部署到多个 CLoud Run 服务

https://cloud.google.com/run/docs/reference/rest/v1/namespaces.services/replaceService

我们正在寻找可以使用 API 应用 labels 而无需从 Container Registry 部署任何新图像的选项。我们知道在应用 labels 时会有 deploymentrevision change 但我们希望在部署期间它不应该从 container registry 中提取新图像,而应该使用来自 last revisionCloud Run 中的任何配置参数,以防止在使用 APIgcloud run services update SERVICE --update-labels KEY=VALUE

应用标签时拉取新图像

Cloud 运行(和 Knative,因为行为相同)的原则是修订是不可变的。因此,如果您更改其中的某些内容,则会创建一个新的修订版。你无法伪装!

因此,解决方案是不使用映像的最新标签,而是使用映像的 SHA。

# the latest
gcr.io/PROJECT_ID/myImage
gcr.io/PROJECT_ID/myImage:latest

# A specific version
gcr.io/PROJECT_ID/myImage:SHA123465465dfsqfsdf

当然,您必须为此更新您的 YAML。