2017-12-12 31 views
1

node.com 응용 프로그램을 Heroku에 배포하려고합니다. 그것은 로컬 완벽하게 잘 작동하지만 내가 그것을 배포 할 때 나는이 점점 계속 :NodeJs 응용 프로그램을 배포 할 때의 로그의 Heroku bcrypt 오류 이해

2017-12-12T17:32:18.220591+00:00 app[web.1]: > [email protected] start /app 
2017-12-12T17:32:18.220592+00:00 app[web.1]: > node app.js 
2017-12-12T17:32:18.220592+00:00 app[web.1]: 
2017-12-12T17:32:18.898850+00:00 heroku[web.1]: Process exited with status 1 
2017-12-12T17:32:18.910740+00:00 heroku[web.1]: State changed from starting to crashed 
2017-12-12T17:32:18.819322+00:00 app[web.1]: module.js:664 
2017-12-12T17:32:18.819338+00:00 app[web.1]: return process.dlopen(module, path._makeLong(filename)); 
2017-12-12T17:32:18.819339+00:00 app[web.1]:    ^
2017-12-12T17:32:18.819339+00:00 app[web.1]: 
2017-12-12T17:32:18.819340+00:00 app[web.1]: Error: /app/node_modules/bcrypt/lib/binding/bcrypt_lib.node: invalid ELF header 
2017-12-12T17:32:18.819341+00:00 app[web.1]:  at Object.Module._extensions..node (module.js:664:18) 
2017-12-12T17:32:18.819342+00:00 app[web.1]:  at Module.load (module.js:554:32) 
2017-12-12T17:32:18.819342+00:00 app[web.1]:  at tryModuleLoad (module.js:497:12) 
2017-12-12T17:32:18.819343+00:00 app[web.1]:  at Function.Module._load (module.js:489:3) 
2017-12-12T17:32:18.819343+00:00 app[web.1]:  at Module.require (module.js:579:17) 
2017-12-12T17:32:18.819344+00:00 app[web.1]:  at require (internal/module.js:11:18) 
2017-12-12T17:32:18.819344+00:00 app[web.1]:  at Object.<anonymous> (/app/node_modules/bcrypt/bcrypt.js:6:16) 
2017-12-12T17:32:18.819345+00:00 app[web.1]:  at Module._compile (module.js:635:30) 
2017-12-12T17:32:18.819345+00:00 app[web.1]:  at Object.Module._extensions..js (module.js:646:10) 
2017-12-12T17:32:18.819345+00:00 app[web.1]:  at Module.load (module.js:554:32) 
2017-12-12T17:32:18.819346+00:00 app[web.1]:  at tryModuleLoad (module.js:497:12) 
2017-12-12T17:32:18.819346+00:00 app[web.1]:  at Function.Module._load (module.js:489:3) 
2017-12-12T17:32:18.819346+00:00 app[web.1]:  at Module.require (module.js:579:17) 
2017-12-12T17:32:18.819347+00:00 app[web.1]:  at require (internal/module.js:11:18) 
2017-12-12T17:32:18.819347+00:00 app[web.1]:  at Object.<anonymous> (/app/models/users.js:3:14) 
2017-12-12T17:32:18.819347+00:00 app[web.1]:  at Module._compile (module.js:635:30) 
2017-12-12T17:32:18.827094+00:00 app[web.1]: npm ERR! code ELIFECYCLE 
2017-12-12T17:32:18.827465+00:00 app[web.1]: npm ERR! errno 1 
2017-12-12T17:32:18.828807+00:00 app[web.1]: npm ERR! [email protected] start: `node app.js` 
2017-12-12T17:32:18.828992+00:00 app[web.1]: npm ERR! Exit status 1 
2017-12-12T17:32:18.829148+00:00 app[web.1]: npm ERR! 
2017-12-12T17:32:18.829260+00:00 app[web.1]: npm ERR! Failed at the [email protected] start script. 
2017-12-12T17:32:18.829357+00:00 app[web.1]: npm ERR! This is probably not a problem with npm. There is likely additional logging output above. 
2017-12-12T17:32:18.834511+00:00 app[web.1]: 
2017-12-12T17:32:18.834634+00:00 app[web.1]: npm ERR! A complete log of this run can be found in: 
2017-12-12T17:32:18.834782+00:00 app[web.1]: npm ERR!  /app/.npm/_logs/2017-12-12T17_32_18_830Z-debug.log 

I 설치하고 NPM 다시 bcrypt 설치 NPM 수행했지만 오류가 지속됩니다. 로그를 이해 한 결과 오류가 bcrypt와 관련이 있다는 것이 확실하다고 생각하십니까?

{ 
    "name": "ev", 
    "version": "1.0.0", 
    "description": "search", 
    "main": "app.js", 
    "scripts": { 
    "start": "node app.js", 
    "test": "echo \"Error: no test specified\" && exit 1" 
    }, 
    "dependencies": { 
    "bcrypt": "^1.0.3", 
    "body-parser": "*", 
    "express": "*", 
    "jsonwebtoken": "^8.1.0", 
    "mongoose": "*" 
    }, 
    "author": "My Name", 
    "license": "ISC" 
+0

https://github.com/soldair/node-qrcode/issues/22 및 https://github.com/kosmtik/kosmtik/issues/208 – wrangler

+0

아무도 내 문제를 해결하지 못합니다. –

답변

0

당신은 bcrypt 라이브러리의 순수한 JS 버전을 사용할 수 있습니다

여기 내 package.json 파일입니다. 이

https://github.com/dcodeIO/bcrypt.js 

이 나던 같은 뭔가 네이티브 종속성이 완벽하게 작동합니다. heroku와 다른 클라우드 플랫폼에 네이티브 종속성이있는 응용 프로그램을 배포하는 데 많은 어려움을 겪었으며 bcrypt와 같은 일부 라이브러리를 순수 js 버전으로 교체해야했습니다.