gpt4 book ai didi

python - 在 Docker 子目录中运行 python 文件

转载 作者:行者123 更新时间:2023-12-02 19:00:09 25 4
gpt4 key购买 nike

我有以下文件结构

project 
├── app
│ ├── main.py
│ └── combine.py
│ └── scrape.py
├── resources
| └── secrets.py
| └── config.py
| └── requirements.txt
|--- Dockerfile

我的 Dockerfile 看起来像
FROM python:3.8
RUN mkdir /project
WORKDIR /project

COPY ./resources/requirements.txt ./
ADD ./resources/. /resources/
ADD ./app/. /app/

RUN pip install -r ./requirements.txt

CMD [ "python", "./app/main.py" ]

我使用 docker build -t my-app . 构建我的图像并使用 docker run my-app 运行

我收到以下错误 python: can't open file './app/main.py': [Errno 2] No such file or directory
我可以保留子目录文件结构并成功运行 Docker 镜像吗?我之前看到的所有教程/问题都将 Dockerfile 与其依赖的所有代码放在同一目录中 - 这是一个要求吗?提前致谢!

最佳答案

您的 WORKDIR 设置为/project。

您的 CMD 作为“./app”运行,因此转换为“/project/app”。

您正在将应用程序复制到“/app”,因此请使用以下命令:
CMD [ "python", "/app/main.py" ]

关于python - 在 Docker 子目录中运行 python 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61185842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com