作者:书友76075933 | 来源:互联网 | 2023-01-27 18:46
这是我的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.
1> 小智..:
当你这样做
RUN cd /app/
RUN pip install -r requirements.txt
Docker将进入/ app/project,然后,将返回上一个文件夹,然后,第二个命令将失败.你必须像这样使用它:
RUN cd /app/ && pip install -r requirements.txt
你可以想象Django在这个链接上使用Docker时的工作方式,该链接有一个运行Django的容器和类似的Dockerfile.
编辑:要匹配评论,您应该将导出行替换为ENV,例如:
ENV DJANGO_SETTINGS_MODULE project.settings
你应该用`ENV DJANGO_SETTINGS_MODULE project.settings`替换`RUN export DJANGO_SETTINGS_MODULE ="project.settings"`参见ENV的文档https://docs.docker.com/engine/reference/builder/#env