sql >> Databáze >  >> NoSQL >> MongoDB

Jak připojit nodeJS docker kontejner k mongoDB

Existuje několik způsobů, jak to udělat.

  • spusťte svou aplikaci ve stejné síti jako 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/
    
  • Můžete také propojit dva kontejnery:

    docker run --link mongo_live:mongo_live you_app_image ..
    # Now mongodb is accessible via mongo_live
    
  • použijte ip adresu kontejneru 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/
    
  • Svůj port mongodb můžete svázat se svým hostitelem a použít název hostitele hostitele ve své aplikaci

  • Můžete použít docker network a spusťte obě aplikace ve stejné síti

  • Můžete předat --add-host mongo_live:<ip of mongo container> docker spustit pro vaši aplikaci a poté použít mongo_live pro mongodb url

  • Můžete také použít docker compose abyste si usnadnili život;)

...



  1. Jak najít vše v mongoosejs?

  2. Mongo - dotaz, vložený dokument se neshoduje kromě tečkové notace

  3. TypeError v /accounts/login/ id musí být instancí (str, unicode, ObjectId), nikoli <type 'int'>

  4. Co se stane, když mongodb nemá paměť?