Meteor-up прекращается после запуска развертывания

Я не знаю, почему я получаю эту ошибку. Meteor-up - это великолепно. Всякий раз, когда я запускаю команду развертывания, он попадает во время и завершается. Может быть, тайм-аут был установлен для сервера, чтобы закончить загрузку файлов. Пожалуйста помоги.

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 ответа

Перед тем, как задавать вопросы, ничто не заменит чтение документации.

Вы также должны обновить пакет mup, как он предлагает.

Есть настройка deployCheckWaitTime что может быть применимо, но похоже, что при загрузке происходит сбой. Я не уверен, включает ли оно время загрузки, но стоило бы увеличить его, чтобы проверить.

Десять минут - это длительный период, когда загрузка составляет всего 41%, поэтому ваше соединение для загрузки медленное. Можете ли вы подключить телефон к более быстрой скорости?

Если это не сработает, посмотрите, не заполнен ли диск на целевом сервере, или мешает какой-то другой тайм-аут (например, ваш компьютер переходит в спящий режим)

Я не знаю, если это все еще актуально, но, возможно, мой ответ поможет кому-то еще иметь дело с той же проблемой.

Задача "Подготовить комплект" была введена в версии 1.3.0 Meteor Up (см. Примечания к выпуску):

После загрузки пакета на каждый сервер запускается новая задача под названием "Подготовка пакета". Он устанавливает зависимости Meteor npm, перестраивает собственные модули и сохраняет результат в образе докера. Это имеет несколько преимуществ:

  • Время в meteor.deployCheckWaitTime больше не должно включать время для установки зависимостей npm
  • При сбое установки зависимостей он не перезапускается непрерывно, пока не истечет срок действия meteor.deployCheckWaitTime, а при запуске с параметром --verbose отображаются полные журналы установки npm.
  • Зависимости устанавливаются только один раз при каждом развертывании. Это означает, что запуск mup, перезапуск mup и перенастройка mup выполняются намного быстрее.

В версии 1.3.1 эту задачу можно отключить, добавив опцию app.docker.prepareBundle в mup.js и установите его в false, Я имел дело с той же ошибкой несколько недель назад, и с помощью этого обходного пути я смог развернуть свое приложение в DigitalOcean.

Другие вопросы по тегам