MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

So verbinden Sie den NodeJS-Docker-Container mit MongoDB

Dafür gibt es mehrere Möglichkeiten.

  • Führen Sie Ihre App im selben Netzwerk wie Ihre Mongodb aus:

    docker run --net container:mongo_live your_app_docker_image
    
    # then you can use mongodb in your localhost
    $ ENV MONGO_URL mongodb://localhost:27017/
    
  • Sie können auch zwei Container verknüpfen:

    docker run --link mongo_live:mongo_live you_app_image ..
    # Now mongodb is accessible via mongo_live
    
  • Verwenden Sie die IP-Adresse des Mongodb-Containers:

    docker inspect -f '{{.NetworkSettings.IPAddress}}' mongo_live
    # you will get you container ip here
    
    $ docker run -it 0b422defbd59 /bin/bash
    # ENV MONGO_URL mongodb://[ip from previous command]:27017/
    
  • Sie können Ihren Mongodb-Port an Ihren Host binden und den Hostnamen des Hosts in Ihrer App verwenden

  • Sie können das docker network verwenden und führen Sie beide Apps im selben Netzwerk aus

  • Sie könnten --add-host mongo_live:<ip of mongo container> übergeben Docker für Ihre Anwendung ausführen und dann mongo_live verwenden für Mongodb-URL

  • Sie können auch docker compose verwenden um dir das Leben leichter zu machen;)

...