5

I am trying to connect mongo DB running in docker container from another docker container where my node js code is running.

So I run MongoDB docker using the following command:

docker run --name my-local-mongo -v mongo-data:/data/db -p 27017:27017 -d mongo

I can access from browser typing 0.0.0.0:27017, however when I try to connect from node js code I am getting following error. My url variable is:

var url = "mongodb://0.0.0.0:27017/surveydb";

{ MongoNetworkError: failed to connect to server [0.0.0.0:27017] on first connect [MongoNetworkError: connect **ECONNREFUSED 0.0.0.0:27017**]
    at Pool.<anonymous> (/usr/src/appg08/node_modules/mongodb-core/lib/topologies/server.js:564:11)
    at Pool.emit (events.js:182:13)
    at Connection.<anonymous> (/usr/src/appg08/node_modules/mongodb-core/lib/connection/pool.js:317:12)
    at Object.onceWrapper (events.js:273:13)
    at Connection.emit (events.js:182:13)
    at Socket.<anonymous> (/usr/src/appg08/node_modules/mongodb-core/lib/connection/connection.js:246:50)
    at Object.onceWrapper (events.js:273:13)
    at Socket.emit (events.js:182:13)
    at emitErrorNT (internal/streams/destroy.js:82:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:50:3)
  name: 'MongoNetworkError',
  errorLabels: [ 'TransientTransactionError' ],
  [Symbol(mongoErrorContextSymbol)]: {} }

Thanks.

Jan Sršeň
  • 1,045
  • 3
  • 23
  • 46
AkDev
  • 61
  • 1
  • 4
  • Possible duplicate of [How to connect nodeJS docker container to mongoDB](https://stackoverflow.com/questions/43962012/how-to-connect-nodejs-docker-container-to-mongodb) – David Maze Sep 20 '18 at 04:45
  • Possible duplicate of [how to link container in docker?](https://stackoverflow.com/questions/41768157/how-to-link-container-in-docker) – Manuel Spigolon Sep 20 '18 at 07:16

1 Answers1

4
var url = "mongodb://0.0.0.0:27017/surveydb";

is ip adddress is in your nodejs container only, so you should know what is ip address of mongo container or assign to ip address gateway of containers.

var url = "mongodb://172.17.0.1:27017/surveydb";

or

var url = "mongodb://ipaddressofmongocontainer:27017/surveydb";
Thanh Nguyen Van
  • 10,292
  • 6
  • 35
  • 53