PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Sử dụng cơ sở dữ liệu PostgreSQL với Docker và Flask, nó hoạt động như thế nào?

Tôi xây dựng lại hình ảnh hoặc khởi động lại vùng chứa, dữ liệu cơ sở dữ liệu của tôi sẽ đi đâu? Nó đã biến mất?

  • Không, dữ liệu không biến mất. Dữ liệu thời gian duy nhất bị xóa là nếu bạn xóa vùng chứa:docker rm <my postgres container> . Lần duy nhất điều này không đúng là nếu bạn gắn một ổ đĩa vào vùng chứa để hiển thị ổ đĩa dữ liệu:docker run -td -p 5432:5432 -v /mydata/volume:/var/lib/postgresql/data postgres:9.5.2

Tôi muốn sử dụng cơ sở dữ liệu của mình trong ứng dụng Flask (Docker), tôi cần đặt những gì vào cấu hình của mình? (DATABASE_URI, NAME, v.v.)

  • Đây có thể là một chủ đề tranh luận nhưng tôi sẽ sử dụng một biến môi trường mà bạn đã đặt khi khởi động vùng chứa:docker run -td -p 80:5000 -e POSTGRES_URL=172.12.20.1 mycontainer/flask:latest Trong cấu hình của mình, bạn sẽ truy cập os.getenv('POSTGRES_URL', 'localhost') . Điều này cho phép bạn đặt mặc định thành localhost nếu vùng chứa được liên kết, nếu không bạn có thể trỏ nó đến một vùng chứa khác đang chạy trên máy khác. Điều này tốt hơn vì nó cho phép bạn triển khai linh hoạt hơn.

Tôi muốn sao lưu cơ sở dữ liệu của mình hoặc tải dữ liệu vào đó? Tôi có thể kết nối với nó không?

  • Có, giống như bất kỳ thứ gì khác, bạn có thể kết nối với Postgres trên IP:PORT bằng cách sử dụng thông tin đăng nhập bạn đã chỉ định trong thời gian chạy vùng chứa.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Java JDBC bỏ qua setFetchSize?

  2. Chọn dữ liệu vào một mảng Postgres

  3. postgresql:Tại sao tôi phải chỉ định -h localhost khi chạy psql?

  4. Truy vấn Postgresql 9.4 chậm dần khi tham gia TSTZRANGE với &&

  5. Làm thế nào để thực hiện đúng cách upert trong postgres 9.5