2016-10-04 173 views
1

我尝试将一个新的Sails.js应用程序部署到Google App Engine。当我简单地部署框架(使用CLI sails new web-service创建的vanilla Sails.js应用程序)时,它工作得很好。部署发生得很快,我可以通过访问该URL来访问该应用程序。将Sails.js应用程序部署到Google App Engine时超时

我配置了ORM /config/connections.js以连接到mLab MongoDB数据库。这种变化之后,应用程序工作正常,我的本地机器上,但是当我使用的终端部署到谷歌应用程序引擎,我得到以下控制台错误:

Updating service [default]...failed. 
ERROR: (gcloud.app.deploy) Error Response: [13] Timed out when starting VMs. (1/2 ready, 1 still deploying). 

npm ERR! Darwin 15.5.0 
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "deploy" 
npm ERR! node v5.11.0 
npm ERR! npm v2.14.5 
npm ERR! code ELIFECYCLE 
npm ERR! [email protected] deploy: `gcloud app deploy --project web-service-staging` 
npm ERR! Exit status 1 
npm ERR! 
npm ERR! Failed at the [email protected] deploy script 'gcloud app deploy --project web-service-staging'. 
npm ERR! This is most likely a problem with the web-service package, 
npm ERR! not with npm itself. 
npm ERR! Tell the author that this fails on your system: 
npm ERR!  gcloud app deploy --project web-service-staging 
npm ERR! You can get their info via: 
npm ERR!  npm owner ls web-service 
npm ERR! There is likely additional logging output above. 

npm ERR! Please include the following file with any support request: 
npm ERR!  /Users/Nag/Code/web-service/npm-debug.log 

这里是npm-debug.log输出:

0 info it worked if it ends with ok 
1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'run', 'deploy' ] 
2 info using [email protected] 
3 info using [email protected] 
4 verbose run-script [ 'predeploy', 'deploy', 'postdeploy' ] 
5 info predeploy [email protected] 
6 info deploy [email protected]0 
7 verbose unsafe-perm in lifecycle true 
8 info [email protected] Failed to exec deploy script 
9 verbose stack Error: [email protected] deploy: `gcloud app deploy --project web-service-staging` 
9 verbose stack Exit status 1 
9 verbose stack  at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/lifecycle.js:214:16) 
9 verbose stack  at emitTwo (events.js:100:13) 
9 verbose stack  at EventEmitter.emit (events.js:185:7) 
9 verbose stack  at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/spawn.js:24:14) 
9 verbose stack  at emitTwo (events.js:100:13) 
9 verbose stack  at ChildProcess.emit (events.js:185:7) 
9 verbose stack  at maybeClose (internal/child_process.js:850:16) 
9 verbose stack  at Process.ChildProcess._handle.onexit (internal/child_process.js:215:5) 
10 verbose pkgid [email protected] 
11 verbose cwd /Users/Nag/Code/web-service 
12 error Darwin 15.5.0 
13 error argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "deploy" 
14 error node v5.11.0 
15 error npm v2.14.5 
16 error code ELIFECYCLE 
17 error [email protected] deploy: `gcloud app deploy --project web-service-staging` 
17 error Exit status 1 
18 error Failed at the [email protected] deploy script 'gcloud app deploy --project web-service-staging'. 
18 error This is most likely a problem with the web-service package, 
18 error not with npm itself. 
18 error Tell the author that this fails on your system: 
18 error  gcloud app deploy --project web-service-staging 
18 error You can get their info via: 
18 error  npm owner ls web-service 
18 error There is likely additional logging output above. 
19 verbose exit [ 1, true ] 

它是否无法启动,因为它无法连接到mLab数据库?如果是,那为什么?在我的本地机器上工作得很好。增加超时会有帮助吗?如果是的话,我该怎么做?

回答

1

好吧,我设法通过更改ORM hookTimeout来解决此问题。

/config/env/development.js/config/env/production.js,添加以下:

module.exports = { 

    // Extends the ORM timeout to connect to the database 
    hookTimeout: 240000 
}; 
相关问题