首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >容器中未找到Python模块

容器中未找到Python模块
EN

Stack Overflow用户
提问于 2021-02-15 17:32:10
回答 1查看 90关注 0票数 0

我有一个目录,其中包含两个文件:

代码语言:javascript
运行
复制
test
  -> __init__.py
  -> file1.py
  -> file2.py

file1包含以下内容:

代码语言:javascript
运行
复制
CONFIG = {
"a": "b"
}

file2正在导入file1

代码语言:javascript
运行
复制
import sys
import os
from file1 import config
sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__))))

现在文件被放入docker容器(卷挂载)

我在容器中收到错误,因为没有名为file1的模块。

尽管所有的文件都存在于容器中。

当我在本地运行哪个python时,它为我提供:

代码语言:javascript
运行
复制
\usr\bin\python

当我执行到docker容器时,python为我提供了:

代码语言:javascript
运行
复制
\usr\local\bin\python

我不明白为什么它说模块找不到,可能是什么原因。

EN

回答 1

Stack Overflow用户

发布于 2021-02-15 19:47:48

对于docker卷,请首先将共享装载到主机系统,然后使用docker卷以允许您的docker容器使用该卷。

此外,还可以从您的主机系统使用权限和用户,因此在使用容器然后使用主机系统上的文件时,权限不会更改,您可以在使用docker run时允许这样做

从下面的文章中,

https://dille.name/blog/2018/07/16/handling-file-permissions-when-writing-to-volumes-from-docker-containers/

有一个用于设置用户id和组id的参数,例如docker run -it --rm --volume $(pwd):/source --workdir - user $(id -u):$(id -g) ubuntu

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66205572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档