第一次将 Symfony 项目部署到 Google App Engine,运行gcloud app deploy
.
Error:
File upload done.
ERROR: (gcloud.app.deploy) INVALID_ARGUMENT: This deployment has too many files. New versions are limited to 10000 files for this app.
- '@type': type.googleapis.com/google.rpc.BadRequest
fieldViolations:
- description: This deployment has too many files. New versions are limited to 10000
files for this app.
field: version.deployment.files[...]
我怀疑问题出在我的 app.yaml 文件上:
runtime: php55
api_version: 1
handlers:
# tell appengine where our static assets live
- url: /public
static_dir: public
(我想我至少错过了一些东西来告诉它不要上传供应商的东西,例如忽略)。
我应该如何更新我的 app.yaml 文件以供项目部署?
PS项目文件夹如下所示:
使用以下命令增加部署的详细程度--verbosity
选项为gcloud 应用部署 https://cloud.google.com/sdk/gcloud/reference/app/deploy命令,您将获得所有上传文件的列表。然后使用skip_files https://cloud.google.com/appengine/docs/standard/php/config/appref#skip_files选项在你的app.yaml
指定您想要忽略的内容:
选修的。这跳过文件元素指定了哪些文件
应用程序目录不会上传到 App Engine。价值
是正则表达式或正则表达式列表。任何
与任何正则表达式匹配的文件名被省略
上传应用程序时要上传的文件列表。
文件名是相对于项目目录的。
The 跳过文件有以下默认值:
skip_files:
- ^(.*/)?#.*#$
- ^(.*/)?.*~$
- ^(.*/)?.*\.py[co]$
- ^(.*/)?.*/RCS/.*$
- ^(.*/)?\..*$
注意:注意覆盖此配置的默认值。
我可能是错的,但您的项目结构图像表明您的应用程序代码位于src
目录。如果是这样我建议移动app.yaml
其中的文件 - 包含以下内容的目录app.yaml
正在部署的文件被认为是应用程序/服务的顶级目录 - 其全部内容将上传到 GAE。此类移动后,您可能需要调整一些路径 - GAE 考虑相对于此应用程序/服务顶级目录的所有应用程序/服务路径。如果需要它们,您可以有选择地将项目目录中的一些文件/目录符号链接到src
dir,部署遵循符号链接,将其替换为实际内容。
一些相关帖子:
- 如何使用密钥正确地将节点应用程序部署到GAE? https://stackoverflow.com/questions/48238273/how-to-properly-deploy-node-apps-to-gae-with-secret-keys/48240817#48240817
- gcloud app deploy:此部署有太多文件 https://stackoverflow.com/questions/42451607/gcloud-app-deploy-this-deployment-has-too-many-files/42451932#42451932
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)