错误:(gcloud.app.deploy)错误响应:[9]云内部版本6axxx ... xxx9b状态:失败。
我试图了解我是否可以将NodeJS / Express服务器与Google Cloud App Engine(标准模式)一起使用。我的应用程序是从Express-Generator框架开始的。有一个单页应用程序,有些功能通过自定义路由回调到服务器。没什么疯狂的。
我设置了存储库,并将$ git clone https://gitlab.com/my_repo
放入了GCloud Shell中。使用沙盒(本地开发服务器)进行测试,测试和重新测试。测试url的格式为:https://8080-dot-xxxxxx-dot-devshell.appspot.com
Yipee。
下一步是艰苦的部署:我从$ gcloud app create
开始,然后是$ gcloud app deploy
(必须进行旁行检查以确保正确的授权和计费内容完整,等等。)。网站/服务器完全可以按预期工作。 URL的格式为https://my-custom-XYZ-website.appspot.com/
,效果很好。
我可以在Google Cloud Platform -- App Engine -- Version console处查看版本,那里的输出显示了我
Version: 20181120t103136
Status: Deployed
Traffic Allocation: 100%
Instances: 1
Runtime: Node10
Environment: Standard
Size: 748.8 KB
Deployed: (Date/Time by me)
这就是背景。现在的问题是我无法再更新内容。我可以轻松地将代码推送到终端界面,但是对于任何形式的更新/新版本,命令$ gcloud app deploy
都会失败。叹。
Log related info -- Build steps:
Fetcher = successful
Builder = status, Step Failed
Builder Arguments
--name=us.gcr.io/my-custom-XYZ-website/app-engine-tmp/app/ttl-2h:12xxxxxxa5a0 --directory=/workspace --destination=/srv --cache-repository=us.gcr.io/my-custom-XYZ-website/app-engine-tmp/build-cache/ttl-7d --cache --base=gcr.io/gae
runtimes/nodejs10:nodejs10_10_13_0_20181111_RC00
Directory /workspace/
"builder": Permission denied for "d71xxxxxxxxxxxxxxxxxx88b5" from request "/v2/my-custom-XYZ-website/app-engine-tmp/build-cache/ttl-7d/node-cache/manifests/d71xxxxxxxxxxxxxxxxxx88b5". : None
app.yaml
# [START runtime]
runtime: nodejs10
# [END runtime]
handlers:
- url: /images
static_dir: public/images
- url: /javascript
static_dir: public/javascript
- url: /red-canoe
static_dir: public/alt-content
- url: /stylesheets
static_dir: public/stylesheets
- url: /.*
secure: always
redirect_http_response_code: 301
script: auto
关于如何识别和更正此处问题的任何想法?
注意:我确实在node.js中创建了另一个简单的测试产品,并且可以在那里轻松地更新版本。该测试产品只有一个简单的app.js和一个简单的Hello World
响应。版本2具有Hello There, World
(好吧,是的,不是世界上最强大的测试...)。但是通过$ gcloud app deploy
进行的版本更新在那儿工作得很好。我确实注意到,Hello World应用程序的版本大小约为245kb左右。
答案 0 :(得分:1)
因此,经过大量测试,我想我知道这里发生了什么。
node.js应用程序实际上利用了三种与Google相关的组件/工具。
当我创建这些组件时,系统会提示我创建一个新项目或利用一个现有项目。我为所有三个工具选择了完全相同的项目。我相信所有这些东西捆绑在一起的事实搞乱了对Google App Engine vcloud app deploy
解决方法是删除三个组合项目,并创建三个单独的项目
这可靠地工作。全做完了。
对于可能对我在此处执行的Firebase / Sheets API感兴趣的任何人,请查看this link.,我建立了一个在线电话目录,并通过手机登录进行了保护,并在个人Google上存储了联系方式片。