【问题标题】:Pip is not installing packages on dockerPip 没有在 docker 上安装软件包
【发布时间】:2025-11-28 17:50:01
【问题描述】:

所以我有一个使用django cookiecutter 创建的 docker 映像,我需要安装额外的 python 包才能让我的应用程序正常工作。我试图安装的包是django markdown,所以我编辑了需求文件夹中的base.txt,当我运行命令sudo docker-compose -f dev.yml run django pip install -r requirements/base.txt 时,它显示了这个输出:

所以看起来它实际上安装了包,但如果我再次运行它,它看起来就像是第一次并尝试再次安装它,如果我尝试运行我的 django 项目,我会得到ImportError: No module named 'django_markdown'。什么可能导致此问题,我应该采取什么解决方法?

我尝试安装不同的软件包,即使使用 sudo docker-compose -f dev.yml run django pip install [package name] command 得到相同的结果

【问题讨论】:

  • 如果您第二次使用docker run,您将生成一个新容器,而不会更改第一次。在构建映像时从Dockerfile 运行安装。
  • 您应该为您的python项目创建一个虚拟环境,将该文件夹复制到docker容器或mount绑定该文件夹,然后直接运行应用程序。

标签: python django docker pip docker-compose


【解决方案1】:

当你尝试在 docker 中安装新包时,你需要重建你的镜像

【讨论】: