Назад | Перейти на главную страницу

Meteor: ошибка контейнера Docker после настройки SSL в mup

После того, как я получил ошибку: *3940 peer closed connection in SSL handshake while SSL handshaking to upstream. Я подумал, что это потому, что я установил nginx для ssl (letsencrypt), но не установил его в папке mup.js. Стандартное приложение запускалось на IP, но получало ошибку 502 на URL. Теперь я получаю эту ошибку, когда запускаю mup setup (работает нормально), затем mup deploy (вызывает ошибку). Клиент - это имя приложения

mup развернуть сборку пакета приложений локально

Started TaskList: Pushing Meteor App [159.203.161.164] - Pushing Meteor App Bundle to The Server [159.203.161.164] - Pushing Meteor App Bundle to The Server: SUCCESS

Started TaskList: Configuring App [159.203.161.164] - Pushing the Startup Script [159.203.161.164] - Pushing the Startup Script: SUCCESS [159.203.161.164] - Sending Environment Variables [159.203.161.164] - Sending Environment Variables: SUCCESS

Started TaskList: Start Meteor [159.203.161.164] - Start Meteor [159.203.161.164] x Start Meteor: FAILED

-----------------------------------STDERR-----------------------------------
Removing docker containers. Errors about nonexistent endpoints and containers are normal.
Error response from daemon: No such container: Client
Error response from daemon: endpoint Client not found
Error response from daemon: No such container: Client-frontend
Error response from daemon: endpoint Client-frontend not found
Error response from daemon: No such container: Client-nginx-letsencrypt
Error response from daemon: endpoint Client-nginx-letsencrypt not found
Error response from daemon: No such container: Client-nginx-proxy
Error response from daemon: endpoint Client-nginx-proxy not found
Finished removing docker containers
docker: Error response from daemon: driver failed programming external connectivity on endpoint Client-frontend (570bf93af6efc15382e6c98b27bf16b3a44cd60672916345d3371126b81045f9): Bind for 0.0.0.0:8080 failed: port is already allocated.
-----------------------------------STDOUT-----------------------------------
base: Pulling from abernix/meteord
Digest: sha256:9ed85313621010dd27a08054ae9225aa1f31798647fbcfdc9cc082181c6f9c97
Status: Image is up to date for abernix/meteord:base
Pulled abernix/meteord:base
49670f85c487fd1ad96847f8c59acb6c712b37277611695100579653897ae310
Ran abernix/meteord:base
Using default tag: latest
latest: Pulling from meteorhacks/mup-frontend-server
03e1855d4f31: Already exists
a3ed95caeb02: Already exists
a3ed95caeb02: Already exists
304ae4ee074b: Already exists
963207107048: Already exists
d9e2907e9fa4: Already exists
4abf3e40edd9: Already exists
3c907a5d5f8f: Already exists
8db38a632903: Already exists
Digest: sha256:573a1dd3e0e7829ad16e813d87e79948e9f2ef2cfa84d17c2c4c220b6e651b12
Status: Image is up to date for meteorhacks/mup-frontend-server:latest
5cb25faa874e5c4233abe46633a3975bc0745175906f1e22004b51b70dd3094b

вот mup.js:

meteor: {
    // TODO: change app name and path
    name: 'Client',
    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://
      PORT: 8080,
      ROOT_URL: 'https://url.com/Client',
      MONGO_URL: 'mongodb://localhost/meteor',
    },


   ssl: {
      crt: '/etc/letsencrypt/live/url.com/fullchain.pem',
        key: '/etc/letsencrypt/live/url.com/privkey.pem',
        port: 8080
    },
    docker: {
      // change to 'kadirahq/meteord' if your app is not using Meteor 1.4
      image: 'abernix/meteord:base',
        imageFrontendServer: 'meteorhacks/mup-frontend-server'
      // imagePort: 80, // (default: 80, some images EXPOSE different ports)
    },

    // This is the maximum time in seconds it will wait
    // for your app to start
    // Add 30 seconds if the server has 512mb of ram
    // And 30 more if you have binary npm dependencies.
    deployCheckWaitTime: 120,
      deployCheckPort: 8080,

    // Show progress bar while uploading bundle to server
    // You might need to disable it on CI servers
    enableUploadProgressBar: true
  },

  mongo: {
    port: 27017,
    version: '3.4.1',
    servers: {
      one: {}
    }
  }
};

Любая помощь будет оценена

Я была такая же проблема. Похоже, это было вызвано существующим приложением Meteor, запущенным на сервере развертывания, которое mup не смог остановить (по какой-либо причине). Поэтому мне пришлось остановить его и вручную удалить контейнер докера:

  1. Перечислите контейнеры докеров с помощью sudo docker ps -aи найдите предыдущее приложение Meteor
  2. sudo docker stop <containerId>
  3. sudo docker rm <containerId>