我使用 docker 镜像作为我自己开发的基础,在其 Dockerfile 中添加了 jessie backports 存储库并使用它来安装依赖项。此图像使用以下命令添加存储库:
echo "deb http://ftp.debian.org/debian jessie-backports main" >> /etc/apt/sources.list
问题是从 backports 存储库中获取包现在失败并出现以下错误(这以前可以工作):
W: Failed to fetch
http://ftp.debian.org/debian/dists/jessie-backports/main/binary-amd64/Packages
404 Not Found
W: Failed to fetch
http://deb.debian.org/debian/dists/jessie-updates/main/binary-amd64/Packages
404 Not Found
我查看了该服务器,这些路径确实不存在。
我试图在 Debian backports 站点上弄清楚这个特定的存储库是否仍然可用,但我没有发现任何迹象表明它已被弃用或类似的东西。
这是存储库的临时问题,还是 jessie-backports 存储库不再可用?如果这不是临时问题,在不升级到较新的 Debian 稳定版本的情况下,我有什么选择可以使用这个或等效的存储库?
Wheezy 和 Jessie 最近被从镜像网络中删除了,所以如果你想继续获取 Jessie backports,你需要使用
archive.debian.org
:(由于不再更新存储库,因此需要禁用有效性检查。Jessie
apt
不支持该check-valid-until
标志,有关详细信息,请参阅inostia 的答案,以及此答案中的配置摘要。)仓库已被移除:所有更新已与主
jessie-updates
仓库合并,不会再有非安全更新。因此,需要删除对jessie-updates
insources.list
或files 的任何引用。在 2020 年 6 月 30 日之前,将继续在安全存储库中在 LTS 支持的架构上提供sources.list.d
安全更新。由于您正在构建容器映像,因此我强烈建议您将其基于 Debian 9 (Stretch)。要继续使用 Debian 8 (Jessie),您的存储库最终应该看起来像
(没有
jessie-updates
存储库)。您还需要禁用有效性检查
/etc/apt/apt.conf
(这将适用于所有存储库):在尝试了@inostia 和@Stephen Kitt 建议的解决方案后,我仍然收到以下错误:
我发现可以通过
deb http://deb.debian.org/debian jessie-updates main
从/etc/apt/sources.list
.我最终在我的 Dockerfile 中得到了以下代码段:
对于那些使用带有较旧 docker 映像基础的 NodeJS 的人。我有一些冻结的图像,其中包含用于编译额外库的这些旧资源。
上下文:如果您想在 docker 构建期间安装 python,您在构建映像期间(过去 24 小时内)遇到了这个问题,因为它在 docker 构建期间无法获取依赖项。
我尝试了这篇文章中的存档路径建议,但无法通过 404。(截至今天也来自archive.debian.org 位置)
解决方案:我最终切换到 node 的最新容器版本(已经预安装了 python 库),并更新包 json 中的一些库(现在还包括曾经需要 pythyon 的二进制库)使问题过时了.
最后,更新容器堆栈的基础镜像(node:latest)似乎是最直接的解决方法。
警惕包含二进制依赖项的陈旧图像堆栈,它们可能需要一段时间来更新核心操作系统层。
如果没有任何效果,则带有这些错误的面板:
考虑一个完整的发行版升级和一个源列表清理来保存你的机器。这些笔记只需要几分钟,但这是最糟糕的。
第一次访问
/etc/apt/sources.list.d/
,并删除所有内容。(做备份)。编辑
/etc/apt/sources.list
,只留下这一行:然后,以 root 身份运行:
确认各种消息。然后尝试:
应该没有错误,只需确认:
一些不同的包可能会引发一些冲突,在这种情况下,使用一次,这将解决各种冲突:
可能的其他错误:
要解决,请按指定导入公钥:
您可能会收到一条非常罕见的消息!
您可能会遇到 olds 内核和 libc 的问题:
不要将这些注释应用于公共服务器。总是去最后一个 LTS。
https://www.debian.org/doc/manuals/debian-faq/ch-uptodate.en.html
https://askubuntu.com/questions/364404/e-unable-to-fetch-some-archives-maybe-run-apt-get-update-or-try-with-fix-mis
https://askubuntu.com/questions/766883/there-is-no-public-key-available-for-the-following-key-ids-1397bc53640db551