在Docker运行命令[附加卷]中找不到熊猫

在Docker运行命令[附加卷]中找不到熊猫,docker,dockerfile,docker-volume,Docker,Dockerfile,Docker Volume,当我构建docker映像并使用以下命令运行它时: docker build -t iter1 . docker run -it --rm --name iter1_run iter1 我的应用程序运行得很好。但是,当我尝试连接卷并执行以下命令时: docker run -it --rm --name iter_run -v /Users/xxxx/Desktop/Docker_Builds/SingleDocker/xxxxxx:/usr/src/oce -w /usr/src/oce py

当我构建docker映像并使用以下命令运行它时:

docker build -t iter1 .

docker run -it --rm --name iter1_run iter1
我的应用程序运行得很好。但是,当我尝试连接卷并执行以下命令时:

docker run -it --rm --name iter_run -v /Users/xxxx/Desktop/Docker_Builds/SingleDocker/xxxxxx:/usr/src/oce -w /usr/src/oce python:3 python oce_test.py
文件oce\u test.py找不到熊猫。

Traceback (most recent call last):
  File "oce_test.py", line 1, in <module>
    import pandas as pd
ModuleNotFoundError: No module named 'pandas'
my requirements.txt的内容如下:

# Docker image
FROM python:3

# Copy requirements
COPY requirements.txt /

# Install Requirements
RUN pip install -r /requirements.txt

# Copy scripts needed for execution
COPY ./xxxx /usr/src/oce

# Establish a working directory
WORKDIR /usr/src/oce

# Execute required script
CMD ["python", "oce_test.py"]
numpy==1.18.1
pandas==1.0.1
matplotlib==3.1.3
scipy==1.4.1
Python-dateutil==2.8.1

大卫·梅兹回答说:


docker run命令运行的是一个普通python:3映像,没有安装其他软件包。如果要使用Dockerfile中的映像,但要使用主机中的任意内容覆盖映像中的应用程序代码,请改用映像名iter1。(您不需要将映像的WORKDIR或CMD作为docker运行选项重复。)

您的
docker运行
命令正在运行一个普通的
python:3
映像,没有安装其他软件包。如果要使用Dockerfile中的图像,但要使用主机中的任意内容覆盖图像中的应用程序代码,请改用图像名称
iter1
。(您不需要重复图像的
WORKDIR
CMD
作为
docker run
选项。)谢谢@DavidMaze,这已经解决了。如果你能把它贴出来作为答案,我可以把它标记为正确的答案。