不同电脑上的docker镜像是不一样的

问题描述 投票:0回答:1

我在两台不同的计算机上运行 docker 镜像,并且该镜像的内容不同。

我通过指定摘要来确保它们是相同的图像

docker run -it ubuntu@sha256:f9d633ff6640178c2d0525017174a688e2c1aef28f0a0130b26bd5554491f0da /bin/bash

但是当我跑步时

cat /etc/apt/sources.list
我得到了非常不同的内容。此外,当我尝试在一台计算机上执行
apt-get update && apt-get install curl -y
时,我收到 400 个错误请求错误,并且无法安装,而在另一台计算机上则运行正常。

坏电脑的镜像 URI 大部分来自 ubuntu 端口,即

ports.ubuntu.com/ubuntu-ports
,而好电脑则大多是
archive.ubuntu.com

我不相信这个文件是在运行时生成的,所以我无法弄清楚是什么导致了这种差异。

linux docker ubuntu apt apt-get
1个回答
0
投票

您面临的问题似乎是由于两台计算机之间的软件包存储库配置 (

/etc/apt/sources.list
) 不同造成的。该文件确定 apt 在哪里查找软件包和更新。

一台计算机具有来自

ports.ubuntu.com/ubuntu-ports
的镜像 URI,而另一台计算机具有
archive.ubuntu.com
的事实表明它们被配置为使用不同的存储库。这可能会导致运行
apt-get update
apt-get install
时的行为差异。

您可以尝试仔细检查以下内容:

  1. 仔细检查两台计算机上使用的 Docker 镜像是否确实相同。有时,即使使用相同的摘要,由于图像的构建方式或提取位置也可能会有所不同。

  2. 如果您希望两台计算机使用相同的存储库,您可以在计算机上使用不需要的镜像 URI 手动编辑

    /etc/apt/sources.list
    ,以匹配另一台计算机的配置。您可以将文件中的
    ports.ubuntu.com/ubuntu-ports
    替换为
    archive.ubuntu.com

© www.soinside.com 2019 - 2024. All rights reserved.