【问题标题】:Google App Engine - Directory missing on deploying nodejs appGoogle App Engine - 部署 nodejs 应用程序时缺少目录
【发布时间】:2020-04-03 01:40:15
【问题描述】:

我有一个用 Typescript 编写的 nodejs Web 应用(基于 koa.js),我想将它部署在 Google App Engine 上。

代码已经被转译为 JavaScript 并且位于本地 ./dist/src/

所以基本上我只想部署./package.json./dist/src/

我的 app.yaml:

runtime: nodejs12
service: my-first-service
env_variables:
  somekey: somevalue

package.json 中的启动命令:node --require dotenv/config ./dist/src/App.js

上传应用程序正常。但似乎 dist 文件夹丢失了。在日志中我可以看到Error: Cannot find module '/srv/dist/src/App.js'。同样在 Stackdriver(调试)中,我看不到 dist 文件夹。

dist 文件夹是我的.gitignore 的一部分,但不在.gcloudignore 中。

我的 .gcloudignore:

.env
.gitcommittemplate
.git
.gitignore
.gitlab-ci.yml
googleCloudKey.json
*.log
*.md
tsconfig.json
tslint.json

.nyc_output/
.vscode/
cli/
dist/tests/
node_modules/
src/
tests/

【问题讨论】:

    标签: node.js typescript google-app-engine npm


    【解决方案1】:

    我看到你在.gcloudignore 中包含了src/ 文件夹。

    这就是您的 /dist/src/ 缺少 link 的原因。

    例如,模式 doc/frotz/ 匹配 doc/frotz 目录,但不匹配 一个/doc/frotz 目录;然而 frotz/ 匹配 frotz 和 a/frotz 是一个目录(所有路径都是 .gitignore 文件的相对路径)。

    我在我的机器上进行了测试,得到了相同的结果。当我将src 文件夹添加到我的.gcoudignore 文件时,src/dist/src 都被忽略了。

    【讨论】:

      猜你喜欢
      • 2020-11-24
      • 2012-02-21
      • 2018-06-08
      • 2019-04-22
      • 2016-09-15
      • 1970-01-01
      • 1970-01-01
      • 2015-11-13
      • 1970-01-01
      相关资源
      最近更新 更多