【发布时间】:2022-01-21 05:56:04
【问题描述】:
我正在使用 docker 多阶段构建对我的 Django 应用程序进行 dockerizing。现在面临依赖问题
Dockerfile
FROM python:3.8-slim-buster AS base
WORKDIR /app
RUN python -m venv venv
ENV PATH="/app/venv:$PATH"
COPY requirements.txt .
RUN pip install -r requirements.txt \
&& pip install gunicorn
COPY entrypoint.sh .
COPY . .
FROM python:3.8-slim-buster
WORKDIR /app
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
COPY --from=base /app /app/
ENV PATH="/app/venv:$PATH"
ENTRYPOINT sh entrypoint.sh
运行容器时会引发导入错误。
ImportError:无法导入 Django。您确定它已安装并在您的 PYTHONPATH 环境变量中可用吗?您是否忘记激活虚拟环境?
【问题讨论】:
-
第二个 FROM 应该是 FROM base
标签: python django docker docker-multi-stage-build