sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur fungerar det med en PostgreSQL-databas med Docker och Flask?

Jag bygger om bilden eller startar om behållaren, vart tar min databasdata vägen? Är det borta?

  • Nej, data är inte borta. Den enda gången data tas bort är om du tar bort behållaren:docker rm <my postgres container> . Den enda gången detta inte är sant är om du monterar en volym till behållaren för att exponera datavolymen:docker run -td -p 5432:5432 -v /mydata/volume:/var/lib/postgresql/data postgres:9.5.2

Jag vill använda min databas i min Flask (Docker) applikation, vad behöver jag lägga in i min konfiguration? (DATABASE_URI, NAME etc..)

  • Detta kan vara föremål för debatt men jag skulle använda en miljövariabel som du ställer in när du startar behållaren:docker run -td -p 80:5000 -e POSTGRES_URL=172.12.20.1 mycontainer/flask:latest I din konfiguration skulle du gå till os.getenv('POSTGRES_URL', 'localhost') . Detta gör att du kan använda localhost som standard om behållaren är länkad, annars kan du peka den till en annan behållare som körs på en annan dator. Detta är bättre eftersom det ger större flexibilitet i din distribution.

Jag vill säkerhetskopiera min databas, eller ladda data i den? Kan jag bara ansluta till den?

  • Ja, precis som allt annat kan du ansluta till Postgres på IP:PORT med de autentiseringsuppgifter som du angav vid containerkörning.



  1. validering på e-post/postnummerfält i sql/oracle

  2. Hur man tolkar JSON i postgresql

  3. 5 sätt att köra ett SQL-skript från en fil i SQLite

  4. hur man får hela resultatuppsättningen från SSMS