gpt4 book ai didi

docker - Docker子镜像不会继承基础镜像中安装的软件包

转载 作者:行者123 更新时间:2023-12-02 19:28:44 27 4
gpt4 key购买 nike

我需要具有以下Docker镜像的层次结构:

“基本”图像:

FROM python:3.5-slim-stretch
RUN apt install -y python3-enchant enchant libpq-dev gcc && apt clean

同样从“基础”继承的子图像:
FROM myprivaterepo:30999/base-image
ENV PATH /usr/lib/postgresql/9.5/bin:$PATH
RUN pip3 install -r requirements.txt

requirements.txt包括打算用 gcc构建的程序包,其中之一需要查找 pg_config程序包中包含的 libpq-dev二进制文件。问题在于,即使它继承并开始从基本镜像正常构建,也无法找到它们。 (尽管如果我将它们安装在子镜像中,那么所有方法都可以工作-但这不是我想要的。)

知道我在做什么错吗?非常感谢。

最佳答案

您是否曾经在没有该软件的情况下构建了基础镜像?然后,这可能是docker镜像的缓存问题,即您的子镜像基于基础镜像的旧缓存版本。

验证以下哈希是否匹配:

  • 建立基础图像将作为最后一行打印:
  • Successfully built <hash>
  • 在开始时构建您的 child 图像打印:
  • Step 1/x : FROM myprivaterepo:30999/base-image
    ---> <hash>
    <hash>应该相同。

    关于docker - Docker子镜像不会继承基础镜像中安装的软件包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53704319/

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