docker - Docker,ENOENT:没有这样的文件或目录
问题描述
我有一个存储常量,在一个名为 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()
,我猜这需要不同的路径。
这几天一直纠结这个问题,求指点,谢谢!
解决方案
推荐阅读
- java - ORA-00604: 递归 SQL 级别 1 发生错误 ORA-01003: 未分析语句
- excel - 在 Windows 10 和 office 2013 中安装 EN LIP 后的字体问题
- vhdl - 在 VHDL 中阻止对 SIGNALS 的分配
- css - 为什么 VW 不等于窗口的可视宽度?
- python - ZeroDivisionError 使用 statsmodels Holt 简单预测与趋势
- excel - 如果在列中按下 Enter 键如何触发代码
- spring-boot - 无法实现对 Spring-Boot API 的基于角色的访问
- java - 有人可以帮助我如何在 mac 计算机中使用 java 程序文件创建可执行文件/应用程序/实用程序吗?
- excel - 需要从过滤器数据中向多个收件人发送电子邮件
- javascript - 注销时内存泄漏