google-cloud-platform - 使用上一个修订版中的映像进行 Cloud Run 部署
问题描述
我们需要CLoud Run
使用以下方法将标签部署到多个服务API method
https://cloud.google.com/run/docs/reference/rest/v1/namespaces.services/replaceService
我们正在寻找可以应用的选项,labels
而API
无需从Container Registry
. 我们知道在应用时会有deployment
,但我们希望在部署期间它不应该从中提取新图像,而应该使用来自. 任何配置参数,以防止在使用或应用标签时拉出新图像revision change
labels
container registry
last revision
Cloud Run
API
gcloud run services update SERVICE --update-labels KEY=VALUE
解决方案
Cloud Run(和 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。
推荐阅读
- linux-kernel - jprobes 是否从内核 v4 中删除?
- python - 回归问题的 Hyperas 损失函数
- rust - Rust 中的隐式借用
- javascript - 怎么获得
来自 XMLHttpRequest 响应的标记值并在 html 中设置
- typescript - Typescript 中的动态枚举键
- python - Python 使用正则表达式捕获字符串中的特定模式
- highcharts - highcharts/highmap 中的零值
- java - 向一个方法发送数据,并一一检查
- javascript - iframe 跨域问题
- python - 使用多对多记录链接到创建时的现有记录