2012-10-16 3 views
0

종속성과 관련하여 dotCloud에 내 nodejs 응용 프로그램을 배포하는 동안 문제가 있습니다. 이 앱은 node-canvas (https://github.com/LearnBoost/node-canvas)를 사용하여 jellynote.com에서 제공되는 음악 시트와 관련된 악보의 미리보기 이미지를 생성합니다.dotCloud의 종속성 문제

내 응용 프로그램을 푸시하고 종속성을 설치하는 동안 오류가 없습니다. 로그 dotCloud 리턴 (편집 로그)

{ 
    "name": "jellyscore", 
    "version": "1.0.0", 
    "dependencies": { 
    "canvas": "", 
    "mongodb": "" 
    } 
} 

하고 여기에 있습니다 : :

node.js:134 
     throw e; // process.nextTick error, or 'error' event on first tick 
     ^
Error: Cannot find module '../build/default/canvas' 
    at Function._resolveFilename (module.js:326:11) 
    at Function._load (module.js:271:25) 
    at require (module.js:355:19) 
    at Object.<anonymous> (/home/dotcloud/node_modules/canvas/lib/bindings.js:7:20) 
    at Module._compile (module.js:411:26) 
    at Object..js (module.js:417:10) 
    at Module.load (module.js:343:31) 
    at Function._load (module.js:302:12) 
    at require (module.js:355:19) 
    at Object.<anonymous> (/home/dotcloud/node_modules/canvas/lib/canvas.js:12:14) 

덕분에 여기 내 package.json 파일입니다!

+1

, 수 전체 오류 메시지를 게시 하시겠습니까? 전체 로그를 보려면 'ssh 을 점선으로 쳐서/var/log/supervisor /로 가서 거기에있는 로그를보고 최상의 정보가있는 로그를 찾으십시오. jellyscore-stderr --- supervisor-DLBeK_.log를 시작하는 것이 좋지만 다른 로그 파일에서도 더 나은 정보를 얻을 수 있습니다. –

+0

메인 질문에서 로그를 편집했습니다. 감사합니다. :) – arthur

답변

3

시스템 종속성으로 CAIRO를 추가 했습니까?

당신의 dotCloud YML :

systempackages: 
    - libcairo2 

그래서 당신이 경우 Node.js를 단지는 다음과 같이해야되는 앱 :

당신이 당신의 로그의 일부를 누락 것 같습니다
www: 
    type: nodejs 
    systempackages: 
     - libcairo2 
+0

잘 잡습니다. libjpeg8-dev, libpango1.0-dev 및 libgif-dev와 같은 모양이 필요합니다. –

+0

고마워요! 그것은 heroku (https://github.com/elspoono/node-canvas-heroku/)를위한 포크와 잘 작동합니다. – arthur