PostgreSQL を Docker および Django に接続するには、次の手順に従います:
Docker と Docker Compose をセットアップする:
Docker と Docker Compose がマシンにインストールされていることを確認してください。
Docker Compose ファイルを作成する:
docker-compose.yml ファイルを作成して、Django と PostgreSQL のサービスを定義します。
version: '3.8' services: db: image: postgres:13 environment: POSTGRES_DB: mydatabase POSTGRES_USER: myuser POSTGRES_PASSWORD: mypassword volumes: - postgres_data:/var/lib/postgresql/data web: build: . command: python manage.py runserver 0.0.0.0:8000 volumes: - .:/code ports: - "8000:8000" depends_on: - db volumes: postgres_data:
# Use the official Python image from the Docker Hub FROM python:3.9 # Set the working directory in the container WORKDIR /code # Copy the requirements file into the container COPY requirements.txt /code/ # Install the dependencies RUN pip install -r requirements.txt # Copy the rest of the application code into the container COPY . /code/
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'mydatabase', 'USER': 'myuser', 'PASSWORD': 'mypassword', 'HOST': 'db', 'PORT': '5432', } }
Django>=3.2,=2.8,
- Docker Compose を実行します: Docker Compose を使用してコンテナーを構築して実行します。
docker-compose up --build
- データベースを移行する: コンテナーが実行されたら、移行を適用して PostgreSQL データベースをセットアップします。
docker-compose exec web python manage.py migrate
- スーパーユーザーの作成 (オプション): 管理パネルにアクセスするための Django スーパーユーザーを作成します。
docker-compose exec web python manage.py createsuperuserこれで、動作する Django アプリケーションが PostgreSQL データベースに接続され、両方とも Docker コンテナ内で実行されるはずです。アプリケーションには http://localhost:8000.
でアクセスできます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3