【发布时间】:2020-05-03 19:03:02
【问题描述】:
我有一个 Python 脚本 python_script.py,它在我的本地机器上读取一个 HDF5 文件 hdf_file.h5。文件的目录路径是
- 文件夹 1
- 文件夹2
- python_script.py
- hdf_file.h5
- 文件夹2
我有以下示例代码:
from pandas import read_hdf
df = read_hdf('hdf_file.h5')
当我在本地机器上运行这段代码时,它运行良好。
但是,我需要将 Python 脚本放在 Docker 容器中,将 HDF 文件保留在容器之外,并让代码读取文件。我希望容器的目录路径如下:
- 文件夹 1
- 文件夹2
- hdf_file.h5
- 泊坞窗文件夹
- python_script.py
- requirements.txt
- Dockerfile
- 文件夹2
我使用以下 Dockerfile:
FROM python:3
WORKDIR /project
COPY ./requirements.txt /project/requirements.txt
RUN pip install -r requirements.txt
COPY . /project
CMD [ "python", "python_script.py" ]
我是 Docker 新手,在弄清楚如何在容器内获取 Python 脚本以读取容器外的文件时遇到了很多麻烦。我要使用哪些命令或更改代码才能做到这一点?
【问题讨论】:
-
为什么需要使用 Docker,而不是 Python 虚拟环境?
-
David,此代码是最终产品的原型,将部署在其他系统上。其他人看不到源代码,所以我使用 Docker 来隐藏代码。我承认这可能不是最好的方法并且对其他人持开放态度,但我认为这可能会奏效。