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

Liên kết Django và Postgresql với Docker

Dockerfile đối với hình ảnh Django của bạn không được để lộ cổng 5432 vì sẽ không có máy chủ Postgresql nào chạy trong bất kỳ vùng chứa nào được tạo từ hình ảnh đó:

FROM python:3-onbuild
EXPOSE 8000
CMD ["/bin/bash"]

Sau đó, khi bạn đang chạy vùng chứa Django liên kết nó với

--link my-postgres:my-postgres

cài đặt của bạn cho cơ sở dữ liệu không chính xác.

Trong vùng chứa Django:127.0.0.1 đề cập đến vùng chứa Django không chạy bất kỳ dịch vụ nào đang lắng nghe trên cổng 5432.

Vì vậy, tệp settings.py của bạn phải là:

  DATABASES = {
   'default': {
       'ENGINE': 'django.db.backends.postgresql_psycopg2',
       'NAME': 'mydb',                      
       'USER': 'postgres',
       'PASSWORD': '',
       'HOST': 'my-postgres',                      
       'PORT': '5432',                      
    }
  }

Khi bạn chạy vùng chứa Django của mình với:

sudo docker run --link my-postgres:db -v /home/mpmsp/project/ezdict/ezbkend:/usr/src/app -name my-app -i -t my-app

sau đó là settings.py của bạn tệp sẽ phải là:

  DATABASES = {
   'default': {
       'ENGINE': 'django.db.backends.postgresql_psycopg2',
       'NAME': 'mydb',                      
       'USER': 'postgres',
       'PASSWORD': '',
       'HOST': 'db',                      
       'PORT': '5432',                      
    }
  }


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sắp xếp các tháng trong khi tôi đang chuyển chúng thành văn bản

  2. Làm thế nào để thiết lập cơ sở dữ liệu Postgres cho dự án Rails cục bộ?

  3. CHỌN phân biệt chữ hoa chữ thường PostgreSQL trên mảng

  4. Django + PostgreSQL:tạo cơ sở dữ liệu (cấp đặc quyền gì)

  5. Làm cách nào bạn có thể xóa hoặc thay đổi truy vấn đếm số phân trang cakephp trên postgresql?