MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come connettere il container docker nodeJS a mongoDB

Ci sono due modi per farlo.

  • esegui la tua app nella stessa rete di mongodb:

    docker run --net container:mongo_live your_app_docker_image
    
    # then you can use mongodb in your localhost
    $ ENV MONGO_URL mongodb://localhost:27017/
    
  • Inoltre puoi collegare due contenitori:

    docker run --link mongo_live:mongo_live you_app_image ..
    # Now mongodb is accessible via mongo_live
    
  • usa l'indirizzo IP del contenitore mongodb:

    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/
    
  • Puoi associare la tua porta mongodb al tuo host e utilizzare il nome host dell'host nella tua app

  • Puoi utilizzare docker network ed esegui entrambe le app sulla stessa rete

  • Potresti passare --add-host mongo_live:<ip of mongo container> per eseguire la finestra mobile per la tua applicazione e quindi utilizzare mongo_live per mongodb url

  • Puoi anche utilizzare docker compose per semplificarti la vita;)

...