2012-11-16 3 views
0

DotCloud에서 NodeJS 프로젝트를 실행 중입니다. 안타깝게도 DotClouds 배포는 "project-intrusive"입니다. 즉, supervisord.conf 파일이 app-root에 있어야합니다. 내 배포 설정은 다음과 같습니다 (git repos 사용). 이제NodeJS의 배치 특정 파일

project-deploy.git/prod/dotcloud.yml 
project-deploy.git/prod/project -> project.git 

(코드에 액세스 할 수있는 서브 모듈로 /prod/project 사용 project.git)는, 이것의 나의 생각은 내가 결국이, 예를 들어, 같은 다른 환경을 가진 끝낼 것입니다 dev, 테스트 및 무대. dev 환경은 모든 것을 로컬로 실행할 것으로 예상되기 때문에 dotcloud.yml 파일조차 가지고 있지 않습니다. 그럼이 방법이 효과적입니다. 그러나 문제는 supervisord.conf 파일을 dotcloud에 배포하기위한 것입니다. 이제는 project.git repo에 있지만 이제는 배포 용이므로 소속되지 않습니다.

배포 구성 파일을 다른 위치에 배치 할 수있는 모듈 또는 NodeJS 스크립트가 있습니까? 예를 들어 대상 환경이 무엇인지 지정할 수도 있습니다. node deploy.js --production, 또는 그와 비슷한 것?

답변

0

supervisord.conf을 제거하는 방법이 있습니다. 예를 들어 실행하고 싶다고 가정합니다. node app.js, 당신은 dotcloud.yml에서 다음을 넣을 수 있습니다 :

www: 
    type: nodejs 
    process: node app.js 

지금은 물론, 그것은 dotcloud.yml 파일 자체의 문제가 해결되지 않습니다 적어도 혼란을 조금 줄여줍니다.

+0

감사합니다. 환경 (생산 등)에 대한 구성을 추가 할 수 있습니까? 아니면 앱을 시작하는 방법으로 제한됩니까? –