2012-11-16 63 views
0

我在DotCloud上運行我的NodeJS項目。可悲的是,DotClouds部署是「項目侵入式」,即它需要一個supervisord.conf文件駐留在應用程序根目錄中。我的部署設置看起來像這樣(使用git回購)。NodeJS中的部署特定文件

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

/prod/project使用project.git作爲一個子模塊訪問的代碼)

現在,我的這雖然是我最終將結束有不同的環境就是這樣,例如開發,測試和階段。開發環境甚至沒有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

謝謝!是否有可能爲環境(生產等)添加配置?還是僅限於如何啓動應用程序? –