Pour connecter PostgreSQL à Docker et Django, suivez ces étapes :
Configurer Docker et Docker Compose :
Assurez-vous que Docker et Docker Compose sont installés sur votre ordinateur.
Créer un fichier de composition Docker :
Créez un fichier docker-compose.yml pour définir les services pour Django et 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,
- Exécuter Docker Compose : Utilisez Docker Compose pour créer et exécuter vos conteneurs.
docker-compose up --build
- Migrer la base de données : Une fois les conteneurs exécutés, appliquez les migrations pour configurer votre base de données PostgreSQL.
docker-compose exec web python manage.py migrate
- Créer un superutilisateur (facultatif) : Créez un superutilisateur Django pour accéder au panneau d'administration.
docker-compose exec web python manage.py createsuperuserMaintenant, vous devriez avoir une application Django fonctionnelle connectée à une base de données PostgreSQL, toutes deux exécutées dans des conteneurs Docker. Vous pouvez accéder à votre application sur http://localhost:8000.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3