ModuleNotFoundError:没有使用 Docker 的名为“psycopg2”的模块

时间:2021-01-09 00:33:18

标签: docker psycopg2

我已经查看了不同的解决方案,但目前我无法找到解决方案。对于上下文,我正在使用 Django 的 Wagtail CMS 构建一个网站,并且我正在尝试使用 Docker。我使用以下方法构建项目:

wagtail start sevendays

然后使用以下代码创建了一个 docker-compose.yml 文件:

version: "3.9"
   
services:
  db:
    image: postgres
    environment:
      - POSTGRES_DB=postgres
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=postgres
  web:
    build: .
    command: python manage.py runserver 0.0.0.0:8000
    volumes:
      - .:/code
    ports:
      - "8000:8000"
    depends_on:
      - db

我还将 settings.py 更改为正确的 PostgreSQL 配置。运行 docker-compose up 给我 ModuleNotFoundError: No module named 'psycopg2'。

我还想指出,执行 pip install psycopg2 和 pip install psycopg2-binary 不起作用,它会给我要求满足的消息。使用 pip3 也不起作用,而且我也不知道。

1 个答案:

答案 0 :(得分:0)

抱歉,我想我找到了解决方案,我忘记在 requirements.txt 中包含 psycopg2-binary

我还替换了默认的 Dockerfile,但我很确定 requirements.txt 是修复它的内容,

FROM python:3
ENV PYTHONUNBUFFERED=1
WORKDIR /code
COPY requirements.txt /code/
RUN pip install -r requirements.txt
COPY . /code/