You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker化Django+PostgreSQL项目失败:psycopg2安装报错

解决Docker构建时psycopg2安装失败的问题

方案一:改用预编译的psycopg2-binary包

直接替换requirements.txt中的psycopg2==2.9.6为psycopg2-binary==2.9.6,跳过源码编译步骤,直接安装预编译版本,无需依赖系统层面的PostgreSQL开发工具。

修改后的requirements.txt:

asgiref==3.6.0
Django==4.2
django-cors-headers==3.14.0
django-environ==0.10.0
djangorestframework==3.14.0
psycopg2-binary==2.9.6
pytz==2023.3
sqlparse==0.4.4
tzdata==2023.3

方案二:在Docker镜像中安装PostgreSQL开发依赖

若坚持使用源码版psycopg2,需在pip安装前先安装系统层面的编译依赖包——slim-buster镜像默认缺失pg_config及编译所需工具。

修改后的Dockerfile:

FROM python:3.12.0a7-slim-buster

WORKDIR /MyBackend

# 安装PostgreSQL开发依赖与编译工具
RUN apt-get update && apt-get install -y --no-install-recommends \
    postgresql-server-dev-all \
    gcc \
    python3-dev \
    && rm -rf /var/lib/apt/lists/*

COPY requirements.txt .

RUN pip install -r requirements.txt

COPY . .

CMD ["python" , "manage.py" , "runserver" , "0.0.0.0:8000"]

补充说明

  • 方案一操作简单,适合绝大多数开发场景,无需额外配置系统依赖;
  • 方案二适用于必须源码编译psycopg2的场景,比如对包安全性有特殊要求或需适配特定环境。

内容的提问来源于stack exchange,提问作者Ramin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 10:17:35