尽管有 'psycopg2-binary',但没有名为 'psycopg2.extensions' 的模块
No module named 'psycopg2.extensions' despite having 'psycopg2-binary'
我正在尝试开发一个利用 psycopg2
的 Django 项目,但是当我在 python:3.7.4-slim
上的 Docker 容器中部署时,我 运行 正在进入 'no pg_config' 问题,所以我确定在一些挖掘之后继续进行的最佳方法是使用 psycopg2-binary
因为这似乎是推荐的前进方式。
现在唯一的问题是,当我尝试从本地 运行 命令 python manage.py <...>
时,出现错误:
ModuleNotFoundError: No module named 'psycopg2.extensions'
我不确定如何继续,因为 psycopg2
在本地运行良好,但我们最终将容器化此资源并将其放在 k8s 集群中,所以我相当确定二进制库是正确的方法。有没有人想出一个解决方案来引入 psycopg2.extensions
而不会牺牲使用二进制分发的完整性?
我的主要抱怨是我不明白为什么 psycopg2
会附带这个 extensions
模块,而 binary
不会,在这一点上我觉得解决方法是强制存储 extensions
在我的存储库中本地某处只是这样调用它,尽管我觉得必须有一个更直观的解决方法。
我也完全有可能误解了 psycopg2
与二进制文件的使用,我应该在部署时使用前者,但我不知道它在 linux 中需要什么依赖项环境?
很高兴根据需要提供更多上下文。
谢谢!
我确定 'solutioning' 使问题过于复杂——我错误地认为最好的方法是使用 psycopg2-binary
,因为我无法找出正确的依赖关系。经过一些挖掘后,我发现 psyocopg2
可以与 python:3.7.4-slim
图像一起使用(除其他外 - 我确信这也会级联到其他发行版) 运行 pip install
之前的以下内容:
apt-get update && apt-get -y install libpq-dev gcc
似乎这就是使用 psycopg2
而不是二进制文件所需的全部内容。
我正在尝试开发一个利用 psycopg2
的 Django 项目,但是当我在 python:3.7.4-slim
上的 Docker 容器中部署时,我 运行 正在进入 'no pg_config' 问题,所以我确定在一些挖掘之后继续进行的最佳方法是使用 psycopg2-binary
因为这似乎是推荐的前进方式。
现在唯一的问题是,当我尝试从本地 运行 命令 python manage.py <...>
时,出现错误:
ModuleNotFoundError: No module named 'psycopg2.extensions'
我不确定如何继续,因为 psycopg2
在本地运行良好,但我们最终将容器化此资源并将其放在 k8s 集群中,所以我相当确定二进制库是正确的方法。有没有人想出一个解决方案来引入 psycopg2.extensions
而不会牺牲使用二进制分发的完整性?
我的主要抱怨是我不明白为什么 psycopg2
会附带这个 extensions
模块,而 binary
不会,在这一点上我觉得解决方法是强制存储 extensions
在我的存储库中本地某处只是这样调用它,尽管我觉得必须有一个更直观的解决方法。
我也完全有可能误解了 psycopg2
与二进制文件的使用,我应该在部署时使用前者,但我不知道它在 linux 中需要什么依赖项环境?
很高兴根据需要提供更多上下文。
谢谢!
我确定 'solutioning' 使问题过于复杂——我错误地认为最好的方法是使用 psycopg2-binary
,因为我无法找出正确的依赖关系。经过一些挖掘后,我发现 psyocopg2
可以与 python:3.7.4-slim
图像一起使用(除其他外 - 我确信这也会级联到其他发行版) 运行 pip install
之前的以下内容:
apt-get update && apt-get -y install libpq-dev gcc
似乎这就是使用 psycopg2
而不是二进制文件所需的全部内容。