Не удается подключиться к базе данных mongo на виртуальной машине Debian с хоста Windows - PullRequest
0 голосов
/ 17 апреля 2019

Я делаю проект, в котором у меня есть база данных mongo на виртуальной машине Debian 9.8.0 (с последней версией virtualbox). У меня на компьютере установлено приложение nodejs (Windows 10), и я хочу подключить это приложение к моей базе данных mongo. Я перепробовал много вещей, но все еще получаю ту же ошибку: Ошибка: подключить ECONNREFUSED: 217017

  • Я пытался отключить брандмауэр на моем компьютере и на виртуальной машине
  • Я перепробовал все возможные конфигурации сети VM (в настоящее время в частной сети хоста)
  • Я могу пропинговать свою ВМ с моего компьютера и с моего компьютера на ВМ
  • Приложение работает с базой данных Монго в локальной сети
  • Возможно, где-то плохой конфиг, код кажется правильным
  • Служба mongod работает с командой: sudo service mongod start
  • Я вижу, что mongod находится в состоянии СЛУШАТЬ, используя lsof -i

сервер nodejs: (запускается с помощью команды "node server.js")

var fs = require('fs');
var url = require('url');
var querystring = require('querystring');

var express = require('express');
var app = express();

//****** MONGODB *******/
const MongoClient = require('mongodb').MongoClient;
const assert = require('assert');

// Connection URL
const urlMongo = 'mongodb://192.168.56.101:27017';

// Database Name
const dbName = 'projet';

// Create a new MongoClient
const client = new MongoClient(urlMongo);

ошибка:

AssertionError [ERR_ASSERTION]: { Error: connect ECONNREFUSED 192.168.56.101:27017
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1097:14)
  errn... == null
    at D:\Basile\Master Informatique\BDD\Projet\server.js:134:20
    at err (D:\Basile\Master Informatique\BDD\Projet\node_modules\mongodb\lib\utils.js:411:14)
    at executeCallback (D:\Basile\Master Informatique\BDD\Projet\node_modules\mongodb\lib\utils.js:401:25)
    at err (D:\Basile\Master Informatique\BDD\Projet\node_modules\mongodb\lib\operations\mongo_client_ops.js:285:21)
    at connectCallback (D:\Basile\Master Informatique\BDD\Projet\node_modules\mongodb\lib\operations\mongo_client_ops.js:265:5)
    at server.connect (D:\Basile\Master Informatique\BDD\Projet\node_modules\mongodb\lib\operations\mongo_client_ops.js:353:14)
    at Server.<anonymous> (D:\Basile\Master Informatique\BDD\Projet\node_modules\mongodb\lib\topologies\server.js:237:11)
    at Object.onceWrapper (events.js:277:13)
    at Server.emit (events.js:189:13)
    at Pool.<anonymous> (D:\Basile\Master Informatique\BDD\Projet\node_modules\mongodb-core\lib\topologies\server.js:452:12)

Поскольку приложение работает с локальной базой данных mongo, я не понимаю, почему оно не работает с моей виртуальной машиной.

...