在Docker运行命令[附加卷]中找不到熊猫
当我构建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 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,这已经解决了。如果你能把它贴出来作为答案,我可以把它标记为正确的答案。