【发布时间】:2016-06-29 09:56:12
【问题描述】:
假设我的 digitalocean/dokku/nodejs/sails 应用程序名为 example.com 并且(将)可通过相应的域使用。
我通过以下方式为我的应用添加了持久存储:
dokku docker-options:add example.com run "-v /home/dokku/_work_:/_work_"
dokku docker-options:add example.com deploy "-v /home/dokku/_work_:/_work_"
如果我运行dokku run example.com "ls /app/_work_" 或dokku run example.com "ls /app/_work_/uploads",我可以看到该文件夹存在并且那里有文件/文件夹。
好的,现在在我的应用程序代码中,我想检查 /app/_work_/uploads 文件夹中的文件夹并删除一些旧文件夹。为此,我首先尝试通过以下方式获取/app/_work_/uploads 中的文件夹列表:
...
var p = path.join(sails.config.rootPath, '_work_/uploads');
var dirs = fs.readdirSync(p);
...
问题是我的代码失败并出现以下错误:
Error: ENOENT: no such file or directory, scandir '/app/_work_/uploads'
at Error (native)
at Object.fs.readdirSync (fs.js:808:18)
at cleanDirs (/app/config/bootstrap.js:36:16)
at Object.module.exports.bootstrap (/app/config/bootstrap.js:21:2)
at Sails.runBootstrap (/app/node_modules/sails/lib/app/private/bootstrap.js:44:25)
at Sails.wrapper [as runBootstrap] (/app/node_modules/sails/node_modules/lodash/index.js:3095:19)
at Sails.initialize (/app/node_modules/sails/lib/app/private/initialize.js:68:9)
at wrapper (/app/node_modules/sails/node_modules/lodash/index.js:3095:19)
at /app/node_modules/sails/node_modules/async/lib/async.js:713:13
at iterate (/app/node_modules/sails/node_modules/async/lib/async.js:262:13)
at /app/node_modules/sails/node_modules/async/lib/async.js:274:29
at /app/node_modules/sails/node_modules/async/lib/async.js:44:16
at /app/node_modules/sails/node_modules/async/lib/async.js:718:17
at /app/node_modules/sails/node_modules/async/lib/async.js:167:37
at /app/node_modules/sails/lib/app/load.js:184:13
at /app/node_modules/sails/node_modules/async/lib/async.js:52:16
at /app/node_modules/sails/node_modules/async/lib/async.js:548:17
at /app/node_modules/sails/node_modules/async/lib/async.js:542:17
at _arrayEach (/app/node_modules/sails/node_modules/async/lib/async.js:85:13)
at Immediate.taskComplete (/app/node_modules/sails/node_modules/async/lib/async.js:541:13)
at processImmediate [as _immediateCallback] (timers.js:383:17)
如果/app/_work_/uploads 并且如果我手动检查那里有文件夹,那会怎样?
【问题讨论】:
-
您确定该文件夹的权限正常吗?
-
是的,100% 确信拥有读/写权限。
标签: node.js sails.js digital-ocean fs dokku