sql >> Databasteknik >  >> NoSQL >> MongoDB

docker-compose för att köra django med mongodb

Jag stötte på ett liknande problem men med en annan tjänst (inte MongoDB). Jag är inte säker på vad jag gör fel men så här skulle jag kunna lösa det:

import os
import mongoengine

MONGODB_HOST = os.environ.get('DB2_PORT_27017_TCP_ADDR', '127.0.0.1')
mongoengine.connect(host=MONGODB_HOST)
  • Med DB2 är namnet på din tjänst i docker-compose.yml
  • 27017 vara hamnen för den exponerade tjänsten.
  • Mer om docker-compose miljövariabler
  • Jag skulle lägga det i min inställningsfil. Men du är fri att placera den var du än tycker att den är lämplig beroende på din projektarkitektur

UPPDATERA

Nu kan docker-compose-behållare nås av andra tjänster som använder ett värdnamn som liknar deras alias. länkdokumentation :

Och på så sätt kan du ansluta till MongoDB så här:

import mongoengine

mongoengine.connect(host="db2")


  1. Använder Redis SCAN i NODE

  2. Kan inte fråga mongoDB med mongoose i node.js

  3. mongodb grupp och undergrupp räknas

  4. node.js sparar stora flyttal i mongo för sökning