运行部署后,Meteor-up终止

我不知道为什么我得到这个错误。 meteor是一个辉煌的。 每当我运行这个deploy命令,它就会一次又一次地终止。 难道是服务器已经设置超时完成上传文件。 请帮忙。

C:\Programs\contract\schoolapps\.deploy>mup.cmd deploy --cached-build ┌─────────────────────────────────────┐ │ │ │ update available 1.3.2 => 1.3.3 │ │ To update, run npm i -g mup │ │ │ └─────────────────────────────────────┘ Not building app. Using build from previous deploy at C:\Users\Kehinde\AppData\Local\Temp\mup-meteor-58e876b4-e682-4ecf-9d41-168fa46a5b19 Started TaskList: Pushing Meteor App [xxx.xxx.xx.xx] - Pushing Meteor App Bundle to The Server [=============== ] 41% 630.4sevents.js:160 throw er; // Unhandled 'error' event ^ Error: write ECONNRESET at exports._errnoException (util.js:1020:11) at WriteWrap.afterWrite (net.js:800:14) C:\Programs\contract\schoolapps\.deploy> 

上传成功后,我得到了这个错误:

 [xxx.xxx.xx.xx] x Prepare Bundle: FAILED -----------------------------------STDERR----------------------------------- Error response from daemon: No such container: myappsupload The command '/bin/sh -c cd /built_app/programs/server && npm install --unsafe-perm' returned a non-zero code: 1 Error response from daemon: No such container: myappsupload Error: failed to start containers: myappsupload -----------------------------------STDOUT----------------------------------- mnpm ERR! meteor-dev-bundle@0.0.0 install: `node npm-rebuild.js` npm ERR! Exit status 254 npm ERR! npm ERR! Failed at the meteor-dev-bundle@0.0.0 install script 'node npm-rebuild.js'. npm ERR! Make sure you have the latest version of node.js and npm installed. npm ERR! If you do, this is most likely a problem with the meteor-dev-bundle package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node npm-rebuild.js npm ERR! You can get information on how to open an issue for this project with: npm ERR! npm bugs meteor-dev-bundle npm ERR! Or if that isn't available, you can get their info via: npm ERR! npm owner ls meteor-dev-bundle npm ERR! There is likely additional logging output above. npm ERR! Please include the following file with any support request: npm ERR! /built_app/programs/server/npm-debug.log ---------------------------------------------------------------------------- C:\Programs\contract\myappsupload\.deploy> 

这是mup.js文件:

 module.exports = { servers: { one: { // TODO: set host address, username, and authentication method host: 'xxx.xxx.xx.xx', username: 'root', // pem: './path/to/pem' password: 'xxxxxxxxxxxxxxxx' // or neither for authenticate from ssh-agent } }, app: { // TODO: change app name and path name: 'schoolapps', path: '../', servers: { one: {}, }, buildOptions: { serverOnly: true, }, env: { // TODO: Change to your app's url // If you are using ssl, it needs to start with https:// ROOT_URL: 'http://schoolapps.com', MONGO_URL: 'mongodb://localhost/meteor', }, // ssl: { // (optional) // // Enables let's encrypt (optional) // autogenerate: { // email: 'email.address@domain.com', // // comma separated list of domains // domains: 'website.com,www.website.com' // } // }, docker: { // change to 'kadirahq/meteord' if your app is using Meteor 1.3 or older image: 'abernix/meteord:base', args: [ //'--link=myCustomMongoDB:myCustomMongoDB', // linking example '--memory-reservation 300M' // memory reservation example ], }, // Show progress bar while uploading bundle to server // You might need to disable it on CI servers enableUploadProgressBar: true, deployCheckWaitTime: 150 }, mongo: { version: '3.4.1', servers: { one: {} } } }; 

在提出问题之前,无法替代阅读文档。

你也应该更新mup包,就像它的build议。

有一个可能适用的设置deployCheckWaitTime ,但它看起来上传失败。 我不确定它是否包含上传时间,但值得一提的是要检查。

十分钟的上传时间很长,只有41%,所以你的上传连接速度很慢 – 你能通过你的手机更好的速度?

如果这不起作用,请查看目标服务器上的磁盘是否已满,或者是否有其他超时(例如计算机进入hibernate状态)

我不知道这是否还是相关的,但也许我的回答会帮助别人处理同样的问题。

Meteor Up 1.3.0版本中引入了“Prepare bundle”任务(请参阅发行说明 ):

捆绑包上传到每个服务器后,运行一个新的任务,称为“准备捆绑”。 它安装Meteor npm依赖项,重build本地模块,并将结果存储在泊坞窗图像中。 这有几个好处:

  • meteor.deployCheckWaitTime中的时间不再需要包含安装npm依赖关系的时间
  • 当安装依赖关系失败时,它不会持续重新启动,直到meteor.deployCheckWaitTime过期,并且使用–verbose运行时显示npm install的完整日志
  • 依赖项在每个部署期间只安装一次。 这意味着mup start,mup restart和mup reconfig都要快得多。

从版本1.3.1开始,可以通过在app.docker.prepareBundle中添加选项app.docker.prepareBundle并将其设置为false来禁用此任务。 几个星期前,我处理了同样的错误,通过此解决方法,我可以将应用程序部署到DigitalOcean。