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

Docker apt-get更新失败

孟均
2023-03-14
问题内容

有人可以帮我在Docker容器中轻松工作吗?每当我尝试在Docker容器中运行任何apt-get命令时,该命令都会失败。我正在运行Docker
1.1.1版,在Ubuntu 12.04上构建bd609d2。

当我做

$ sudo docker run -i -t ubuntu:14.04 /bin/bash
# apt-get update

我说错了

无法解析“ archive.ubuntu.com”

我试图取消注释/ etc / default / docker下面的行

DOCKER_OPTS =“-dns 8.8.8.8 –dns 8.8.4.4”

但我仍然无法ping google.com

ping:未知主机

我确认该容器正在使用dns服务器8.8.8.8和8.8.4.4

root @ 0baa87fc6322:/#cat /etc/resolv.conf

域名服务器8.8.8.8

域名服务器8.8.4.4

而且我能够ping通这两个服务器,因此我很确定防火墙不仅会丢弃我的数据包。

任何帮助,将不胜感激!

谢谢!


问题答案:

感谢你的帮助!我发现这是DNS问题,这是由于防火墙引起的。搜索更多后,我发现在搜索“ docker apt-get fail”时找不到该问题

Docker-在企业网络上构建映像期间网络调用失败

他的问题类似于我的问题,该解决方案帮助我使其正常运行。我已将他的解决方案复制给以后发现此问题的任何人。

这些Google服务器无法从防火墙后面访问,这就是为什么我们无法解析任何URL的原因。

解决方法是告诉Docker使用哪个DNS服务器。此修补程序取决于您如何安装Docker:Ubuntu软件包

如果您已安装Ubuntu软件包,请编辑/ etc / default / docker并添加以下行:

DOCKER_OPTS =“-dns <您的dns_server_1> --dns <您的dns_server_2>”

您可以在此配置中添加任意数量的DNS服务器。编辑完此文件后,您将要重新启动Docker服务:

sudo服务docker重新启动

二进制文件

如果您已经通过binaries方法安装了Docker(即没有软件包),那么在启动Docker守护程序时就设置了DNS服务器:

须藤码头工人-d -D –dns –dns&



 类似资料:
  • 对Powershell很陌生,希望有人能给我指明正确的方向。我想知道是否有一个更干净的方法来完成我下面的工作?如果我对第一次Get-ChildItem调用时返回的文件(存储在$items变量中)做了一些更改,那么有没有一种方法可以刷新到Get-ChildItem的内容? 在第一个foreach语句中,我为返回的所有文件创建一个日志签名。一旦那样做了,我需要做的是;再次获取列表(因为路径中的项已经更

  • 我正在使用HtmlUnit加载一个满是JavaScript的网页。可以很好地执行JavaScript。 但是,当我单击调用Ajax调用的特定表单上的按钮时,即使调用本身完成了,内容(结果)也不会出现在页面上(即使在真正的浏览器中出现了)。

  • 我在我的项目中运行了composer update,因为我更改了计算机,所以我克隆了该项目。它返回了以下错误,但我不知道如何解决它们…: 问题1-系统中缺少请求的PHP扩展ext mcrypt*。安装或启用PHP的mcrypt扩展。 问题2-guzzle/guzzle v3.9.3的安装请求- 问题3-phpoffice/phpexcel 1.8.1的安装请求- 问题4-sentry/sentry

  • 我用的是树莓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

  • 问题内容: 我正在运行Travis构建,构建mysql:5.7.27 docker映像时失败。Dockerfile运行,然后出现错误。 使用curl我可以看到它正在重定向,但是重定向到URL的结果为404。有人看到这种行为并且有补救措施吗?在debian进行更改之前,它基本上是不可修复的吗? 问题答案: 这是由于事实 由于Wheezy和Jessie最近已集成到archive.debian.org结

  • 问题内容: 好的。我在这里建立了一个mysql查询浏览器,例如navicat。使用MySQLdb执行查询。 这是奇怪的部分。当我通过程序运行查询(使用MySQLdb)时,它给我成功,受影响的行= 1,但是当我在phpmyadmin中查看该查询时,该值没有改变。 因此,在执行查询之前,我先将其打印出来,然后将其复制并粘贴到phpmyadmin的查询窗口中,然后单击go即可运行。长话短说,更新查询不起