运行部署

时间:2017-09-13 13:14:42

标签: docker meteor windows-10 ubuntu-16.04 meteor-up

我不知道为什么我会收到这个错误。流星是一种辉煌。每当我运行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: {}
    }
  }
};

2 个答案:

答案 0 :(得分:0)

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

您还应该按照它的建议更新mup包。

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

上传十分钟只需41%,因此您的上传连接速度很慢 - 您是否可以通过手机获得更快的速度?

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

答案 1 :(得分:0)

我不知道它是否仍然相关,但也许我的答案会帮助其他人处理同样的问题。

Meteor Up版本1.3.0中引入了“Prepare bundle”任务(参见release notes):

  

将捆绑包上传到每个服务器后,将运行一个名为“Prepare bundle”的新任务。它安装Meteor npm依赖项,重建本机模块,并将结果存储在docker镜像中。这有一些好处:

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

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