要将 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现在,您应该有一个连接到 PostgreSQL 数据库的工作 Django 应用程序,两者都在 Docker 容器中运行。您可以通过 http://localhost:8000 访问您的应用程序。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3