Docker未导入Python文件



我正在构建一个python文件,为您提供来自任何加密钱包的ETH余额。我想通过运行以下Dockerfile来做到这一点:

FROM python:3.9.6
ADD main.py .
RUN pip freeze > requirements.txt
RUN pip install -r requirements.txt
CMD ["python", "main.py"]

main.py导入WalletData.py(包含web3请求)。当我手动运行main.py时,这工作得很好,但是当我尝试使用Dockerfile时,我得到错误"ModuleNotFoundError:没有名为'WalletData'的模块"。我能做什么?

工作区具有以下结构

我想你只是忘了添加复制或你的/app文件夹到容器。只有main.py被添加到容器。

确保在docker容器中使用COPY/add命令添加所有文件,以防WalletData是自定义模块。如果您正在使用任何第三方模块/库,也可以使用pip install

例如使用Dockerfile向Docker容器添加自定义模块

FROM python:3.9.6
ADD /app .
ADD main.py .
ADD requirement.txt .

RUN pip freeze > requirements.txt
RUN pip install -r requirements.txt
CMD ["python", "main.py"]

最新更新