繁体   English   中英

Dockerfile:/bin/sh:1:apt-get:未找到

[英]Dockerfile: /bin/sh: 1: apt-get: not found

构建 Docker 文件时,出现错误

"/bin/sh: 1: apt-get: not found"

docker 文件:

FROM python:3.8
FROM ubuntu:20.04
ENV PATH="/env/bin/activate"
RUN apt-get update -y && apt-get upgrade -y

WORKDIR /var/www/html/
COPY . .
RUN pip install -r requirements.txt
EXPOSE 8000

CMD ["python", "manage.py"]
  1. 您将PATH设置为/env/bin/activate ,然后这是搜索apt-get的唯一位置。 无需在容器内激活虚拟环境,只需摆脱该行即可。 pip可以毫无问题地将requirements.txt中的包安装到“系统”Python。

  2. 你不能像你试图做的那样使用多个 FROM 语句对图像进行分层。 只需使用FROM python:3.8并删除 ubuntu。 在多阶段构建中使用多个FROM语句,其中您有中间映像,这些映像会产生复制到最终映像的工件。

所以就这样做:

FROM python:3.8
RUN apt-get update -y && apt-get upgrade -y
WORKDIR /var/www/html/
COPY . .
RUN pip install -r requirements.txt
EXPOSE 8000
CMD ["python", "manage.py"]

.. 虽然你为什么要把 Python 代码放在 /var/www/html 中让我感到震惊。 可能你没有。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM