我在OSX上本地运行正常,我正在尝试将其部署到aws elasticbeanstalk。在部署过程中,我收到了一个错误,如下面的
bcrypt@1.0.3 install /tmp/deployment/application/node_modules/bcrypt
node-pre-gyp install --fallback-to-build
module.js:471
throw err;
^
Error: Cannot find module '../'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.<anonymous>
(/tmp/deployment/application/node_modules/.bin/node-pre-gyp:15:20)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
我已经读过这似乎是npm install的一个问题,我应该将bcrypt直接添加到我的package.json文件中以获取依赖项,我已经做到了。
我能够通过删除我的node_modules文件夹并尝试运行npm install而不使用bcrypt作为依赖项来本地复制该问题。然后我再次删除了node_modules文件夹并添加了bcrypt作为直接依赖项,npm install工作正常。
但是我似乎无法通过elasticbeanstalk解决这个问题。当我进入实例时,路径中没有节点或npm,我不确定它们在ElasticBeanstalk上的安装位置。我确实发现部署在/ tmp / deployment / application下,我试图删除node_modules目录并再次部署,但是这也没有解决问题。
答案 0 :(得分:0)
你可能想确保beanstalk实例安装了Python 2.x,因为BCrypt依赖它来使它工作。
此外,beanstalk应用程序安装在以下路径中: / var / app / current