代码之家  ›  专栏  ›  技术社区  ›  KasparTr

Docker,Enoint:没有这样的文件或目录

  •  0
  • KasparTr  · 技术社区  · 6 年前

    我有一个存储常量,在一个名为listingController的文件中使用。js

    const storage = Storage({
       keyFilename: "../key/keyname.json"
    });
    

    当我不使用Docker时,一切正常,但在我创建Docker映像并将其部署到服务器上后,我得到以下错误:

    ENOENT: no such file or directory, open '/key/keyname.json'
    at wrapError (/app/node_modules/gcs-resumable-upload/build/src/index.js:17:12)
    at /app/node_modules/gcs-resumable-upload/build/src/index.js:235:19
    at getToken (/app/node_modules/google-auto-auth/index.js:27:9)
    at getAuthClient (/app/node_modules/google-auto-auth/index.js:233:9)
    at <anonymous>
    

    这里我看到一个问题 '..' 在路径前面被忽略,这就是我认为找不到该文件的原因。

    以下是我的项目结构:

    src
    --- key
    ----- keyname.json
    ----- firebasekeyfilename.json
    --- controller
    ----- listingController.js
    ----- firebaseController.js
    

    我尝试了所有不同的文件名和路径组合,但我无法让它找到该文件。

    有人知道为什么会这样吗?

    在我的firebaseController中,我对同一文件夹中的一个类似文件有以下引用,它运行良好。

    var serviceAccount = require("../key/firebasekeyfilename");
    

    唯一的区别是路径在内部 require() 我想这需要一条不同的道路。

    我已经坚持了几天了,如果有任何建议,我们都将不胜感激,谢谢!

    0 回复  |  直到 6 年前