如何从docker中的python模块读取文件

如何在Docker中执行时读取python模块中的文件? 我有我的代码中导入的python模块。 通常为了获取模块的相对path,可以执行<<module_name>>.__path__ 。 但是这种方法在docker中不起作用,但在本地工作。

有没有一种常见的方式,我可以在Docker中以及在本地读取模块中的文件?

有几件事情需要考虑:

  1. python在容器中安装在哪里,什么版本? 这是否符合你的开发环境?
  2. 看看你的dockerfile – 你的工作目录是什么? 你有一个吗? 也许,你正在从一个目录运行你的Python代码,但试图从另一个目录导入一个模块。
  3. 你的PYTHONPATH套在你的容器里吗?
  4. 您是否已经将模块安装在您尝试使用的容器中? 也许与一个requirements.txt文件或手动? 如果是这样,你是用你安装模块的python版本/path来执行你的python代码吗?
  5. 你在使用虚拟环境吗? 它是来源?
  6. 什么用户是你的容器运行? 它有权访问python模块吗? 您可能需要chown站点包path或作为一个不同的用户或root