【问题标题】:Why docker build flag --add-host is not working on linux ubuntu ?为什么 docker build flag --add-host 在 linux ubuntu 上不起作用?
【发布时间】:2017-07-11 16:42:38
【问题描述】:

我正在尝试运行我的 docker 开发设置,但我无法访问主机 来自

docker build --add-host mymachinelocalip:ss-local

在我的生产 ubuntu 环境中,通过调用 Dockerfile:

RUN curl -f http://ss-local:8181

我的 /etc/hosts :

::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.1  ss-local
172.17.0.5  e1ede117fb1e

在我的本地计算机(MacOSX El Capitan 和 Windows10)上一切正常。 但是在使用 Ubuntu curl 命令的 digitalocean droplet 上失败。

我是 docker 的初学者.. 我想知道也许有一些 linux 上的一种防火墙,阻止与主机的连接...

Ubuntu 16.04.2 LTS 和 Docker 版本 17.06.0-ce,构建 02c1d87。

【问题讨论】:

  • 如果 --add-host 映射在运行时完成并使用与 docker0 接口不同的 IP 地址,您是否会遇到相同的问题。我(即: docker run -ti --add-host "ss-local:192.168.120.154" ubuntu bash)
  • 它在运行时也不工作......
  • 临时解决方案:降级到 Ubuntu 14.04.5 LTS....

标签: docker dockerfile docker-machine


【解决方案1】:

当您将 --add-host 传递给 docker build 时,主机仅在构建期间添加。如果您将 --add-host 传递给 docker run,则主机将在运行时出现。

参考:https://github.com/moby/moby/pull/30383#issuecomment-314797629

【讨论】:

    猜你喜欢
    • 2019-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-19
    • 1970-01-01
    • 2015-05-18
    • 2023-02-23
    • 2020-10-29
    相关资源
    最近更新 更多