当前位置: 首页 > 面试题库 >

apt-get更新在先前运行的版本中失败,并显示404

柴宏阔
2023-03-14
问题内容

我正在运行Travis构建,构建mysql:5.7.27 docker映像时失败。Dockerfile运行apt-get update,然后出现错误W: Failed to fetch http://deb.debian.org/debian/dists/jessie- updates/main/binary-amd64/Packages 404 Not Found

使用curl我可以看到它正在重定向,但是重定向到URL的结果为404。有人看到这种行为并且有补救措施吗?在debian进行更改之前,它基本上是不可修复的吗?

➜  ms git:(develop) curl --head http://deb.debian.org/debian/dists/jessie-updates/main/binary-amd64/Packages
HTTP/1.1 302 Found
Date: Tue, 26 Mar 2019 16:03:04 GMT
Server: Apache
X-Content-Type-Options: nosniff
X-Frame-Options: sameorigin
Referrer-Policy: no-referrer
X-Xss-Protection: 1
Location: http://cdn-fastly.deb.debian.org/debian/dists/jessie-updates/main/binary-amd64/Packages
Content-Type: text/html; charset=iso-8859-1

➜  ms git:(develop) curl --head http://cdn-fastly.deb.debian.org/debian/dists/jessie-updates/main/binary-amd64/Packages
HTTP/1.1 404 Not Found
Server: Apache
X-Content-Type-Options: nosniff
X-Frame-Options: sameorigin
Referrer-Policy: no-referrer
X-Xss-Protection: 1
Content-Type: text/html; charset=iso-8859-1
Via: 1.1 varnish
Content-Length: 316
Accept-Ranges: bytes
Date: Tue, 26 Mar 2019 16:03:17 GMT
Via: 1.1 varnish
Age: 45
Connection: keep-alive
X-Served-By: cache-ams21028-AMS, cache-cdg20741-CDG
X-Cache: HIT, HIT
X-Cache-Hits: 6, 2
X-Timer: S1553616198.734091,VS0,VE0

问题答案:

这是由于事实

由于Wheezy和Jessie最近已集成到archive.debian.org结构中,因此我们从今天开始从镜像网络中删除Jessie的所有Wheezy和所有非LTS架构

(如您在这里阅读)

一个解决方案(根据https://github.com/debuerreotype/docker-debian-
artifacts/issues/66#issuecomment-476616579
)是添加以下行:

RUN sed -i '/jessie-updates/d' /etc/apt/sources.list  # Now archived

any apt-get update在使用debian:jessie 进行调用之前,将其放入Dockerfile 。这jessie- updates将从sources.list中删除存储库(现在导致404)。

因此,尽管以下操作无效:

FROM debian:jessie
RUN apt-get update
CMD /bin/sh

它的工作原理如下:

FROM debian:jessie
RUN sed -i '/jessie-updates/d' /etc/apt/sources.list  # Now archived
RUN apt-get update
CMD /bin/sh


 类似资料:
  • 问题内容: 有人可以帮我在Docker容器中轻松工作吗?每当我尝试在Docker容器中运行任何apt-get命令时,该命令都会失败。我正在运行Docker 1.1.1版,在Ubuntu 12.04上构建bd609d2。 当我做 我说错了 无法解析“ archive.ubuntu.com” 我试图取消注释/ etc / default / docker下面的行 DOCKER_OPTS =“-dns

  • 问题内容: 我试图在已经安装了Node 0.8.14的新Ubuntu 12.04实例上设置节点环境,但是在尝试运行时遇到了问题。因此,当我尝试时,它说我需要以root或管理员身份运行它: 但是,当尝试以sudo身份运行它时,它表示以下内容: 在我的package.json中,它包含以下脚本: 由于我已经在自己的计算机(Mac)上安装了所有的依赖关系,因此这些依赖关系是有效的。有人知道为什么会这样吗

  • 错误日志表明,我的项目中使用的版本与更新的newrelic JavaAgent中的版本之间存在冲突。在谷歌上,我发现了这两个SO链接,第一个和第二个类似的问题。根据给出的答案,我补充道 然后这个错误就消失了。 但在再次运行时,我开始出现以下异常:com.newrelic.agent.config.ConfigurationException 我想知道这里出了什么问题/缺少了什么?

  • 问题内容: 我在代理后面,我需要通过安装一些东西。 我最好的是这个 问题是,我之后需要取消设置这些环境变量。 任何想法如何做到少于5层? 问题答案: 您需要使用构建时变量(–build-arg)。 该标志允许您传递在Dockerfile的RUN指令中像常规环境变量一样被访问的构建时变量。而且,这些值不会像ENV值那样保留在中间或最终图像中。 因此,您只有3行: 您只需要定义构建时变量和/或在图像构

  • 问题内容: 我默认使用python2.6的ubuntu 10.04。我已经安装了python2.7。 当我想安装python软件包时 它被安装到python2.6。我如何才能将软件包安装到python2.7?有什么选择吗? 我已经看过这个,但我找不到我的OS这样的目录。我考虑过使用,但并非所有软件包都受支持。例如。 我对将python2.7与绑定更感兴趣。 问题答案: Python具有自己的软件包

  • 我用的是树莓pi 3b杰西发行。我试图更新我的覆盆子,但它给我这个错误: sudo apt-get更新 Get:1 http://archive.raspbian.org jessie InRelease 100% [1 InRelease gpgv 6,893 B]拆分 /var/lib/apt/lists/部分/archive.r Ign http://archive.raspbian.org