云 运行 部署使用上次修订的图像
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
时会有 deployment
和 revision change
但我们希望在部署期间它不应该从 container registry
中提取新图像,而应该使用来自 last revision
。 Cloud Run
中的任何配置参数,以防止在使用 API
或 gcloud 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。
我们需要使用以下 API method
CLoud Run
服务
https://cloud.google.com/run/docs/reference/rest/v1/namespaces.services/replaceService
我们正在寻找可以使用 API
应用 labels
而无需从 Container Registry
部署任何新图像的选项。我们知道在应用 labels
时会有 deployment
和 revision change
但我们希望在部署期间它不应该从 container registry
中提取新图像,而应该使用来自 last revision
。 Cloud Run
中的任何配置参数,以防止在使用 API
或 gcloud 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。