G. *_*lon 10 google-app-engine node.js google-cloud-platform
我在Google App Engine上运行Node.js应用程序,使用以下命令部署我的代码:
gcloud app deploy --stop-previous-version
Run Code Online (Sandbox Code Playgroud)
我希望的行为是针对运行以前版本的所有实例终止,但它们似乎总是坚持不懈.有什么我想念的吗?
我意识到他们没有接收到流量,但我仍在为他们付费,他们会造成一些背景遥测噪音.有没有更好的方法来运行此命令?
IAm*_*ale 15
由于后续部署未清除的错误灵活实例,我们在不到30天的时间内意外地破坏了我们的免费Google App Engine信用额度.当我们确定它是原因时,它已经扩大到四个基本上空转的同时实例.
tl; dr:
--version在部署时使用标志来指定版本名称.下次部署时,将替换具有相同版本的现有实例 .
这让我失去了兔子洞--stop-previous-version.这是我到目前为止发现的:
--stop-previous-version似乎不再受支持了.它在参考页面上的Flags下面提到过,但是如果你看一下列出所有标志的页面顶部,就无处可寻.gcloud app deploy
我尝试使用该标志进行部署以查看会发生什么,但它似乎没有任何效果.仍然创建了一个新版本,我仍然需要进入并手动删除旧实例.
在gcloud-maven-plugin repo上有一个开放的Github问题,专门将这个问题称为该插件的一个问题,但这个问题似乎被忽略了.
在这一点上,我们在这一点上最好的选择是添加--version=staging或其他任何内容gcloud deploy app.该标志的参考文档似乎表明它将替换共享该"版本"的现有实例:
--version = VERSION,-v VERSION
将由此部署创建或替换的应用程序版本.如果您未指定版本,将为您生成一个版本.
(强调我的)
此外,谷歌自己的app.yaml参考文档(Python文档的链接,但它仍然相关)特别调用--version标志作为部署时指定版本的"首选"方式:
建议的方法是从app.yaml文件中删除version元素,而是使用命令行标志指定您的版本ID
| 归档时间: |
|
| 查看次数: |
4390 次 |
| 最近记录: |