我有一个目录,其中包含两个文件:
test
-> __init__.py
-> file1.py
-> file2.py
file1包含以下内容:
CONFIG = {
"a": "b"
}
file2正在导入file1
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时,它为我提供:
\usr\bin\python
当我执行到docker容器时,python为我提供了:
\usr\local\bin\python
我不明白为什么它说模块找不到,可能是什么原因。
发布于 2021-02-15 19:47:48
对于docker卷,请首先将共享装载到主机系统,然后使用docker卷以允许您的docker容器使用该卷。
此外,还可以从您的主机系统使用权限和用户,因此在使用容器然后使用主机系统上的文件时,权限不会更改,您可以在使用docker run
时允许这样做
从下面的文章中,
有一个用于设置用户id和组id的参数,例如docker run -it --rm --volume $(pwd):/source --workdir - user $(id -u):$(id -g) ubuntu
https://stackoverflow.com/questions/66205572
复制相似问题