Докер Mongodb: MongoNetworkError: connect ECONNREFUSED 192.168.96.2:27017 - PullRequest
0 голосов
/ 14 февраля 2019

Когда я запускаю docker-compose локально, мое приложение работает нормально.но когда я нажимаю на свой веб-сервер, я получаю следующую ошибку:

connection error : MongoNetworkError: failed to connect to server 
[mongo:27017] on first connect [MongoNetworkError: connect ECONNREFUSED 
192.168.96.2:27017]

Я не понимаю, что происходит.

Вот мой файл докера:

FROM node:10

WORKDIR /usr/src/app

COPY package*.json ./

RUN npm install

COPY . . 

EXPOSE 3001

CMD ["node", "server"]

Мой файл docker-compose:

version: '3'

services: 
  app:
    depends_on: 
      - mongo
    container_name: data-foot-api-container
    restart: always
    build: .
    ports: 
      - '80:3001'
  mongo: 
    image: mongo
    container_name: mongodb
    ports:
      - '27017:27017'
    volumes:
      - /data/db:/data/db
volumes:
  data-football:

Если у кого-то есть идеи о том, как он может появиться, я был бы очень признателен

1 Ответ

0 голосов
/ 14 февраля 2019

Спасибо всем вам за помощь.

Это действительно было связано с тем, что контейнер Node был готов и запущен ДО контейнера mongo.Таким образом, Node пытался достичь монго, но монго еще не было.

Я нашел способ заставить докер ждать готовности монго, прежде чем собирать контейнер узла: https://dev.to/hugodias/wait-for-mongodb-to-start-on-docker-3h8b

Возможно, есть другие способы сделать это, если кто-то знает другой или лучший способ, пожалуйста, прокомментируйте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...