这是我的 Dockerfile

FROM python:3.6-slim

COPY app/ /app

EXPOSE 8000

RUN cd /app/
RUN pip install -r requirements.txt

WORKDIR /app/project/

RUN python manage.py makemigrations
RUN python manage.py migrate
RUN export DJANGO_SETTINGS_MODULE="project.settings"

CMD [ "python", "manage.py", "server"]

当我尝试构建它时,它失败说它在 app 文件夹中找不到 requirements.txt。

最佳答案

当你做

RUN cd /app/
RUN pip install -r requirements.txt

Docker 会进入/app/project,然后,会回到上一个文件夹,然后,第二个命令会失败。
你必须像这样使用它:
RUN cd /app/ && pip install -r requirements.txt

您可以在这个 link 上使用 Docker 时可视化 Django 是如何工作的,该 comment 具有一个运行 Django 的容器,并且具有类似的 Dockerfile。

编辑 :
要匹配 ojit_a ,您应该将导出行替换为 ENV,例如:
ENV DJANGO_SETTINGS_MODULE project.settings

关于python - Docker 构建镜像时找不到文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45375372/

10-16 10:01