如何让 Docker 容器使用主机的“/etc/hosts”文件?

新手上路,请多包涵

我想让它让我启动的 Docker 容器使用与我运行的主机相同的 /etc/hosts 设置。有没有办法做到这一点?

我知道有一个 --add-host 选项与 docker run ,但这并不是我想要的,因为主机的 /etc/hosts 文件在不同的机器上可能不同,用 --add-host 硬编码确切的 IP 地址/主机对我来说不是很好。

原文由 d3ming 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2.3k
2 个回答

docker run 命令中使用 --network=host —。这告诉 Docker 让容器使用主机的网络堆栈。你可以 在这里 了解更多。

原文由 d3ming 发布,翻译遵循 CC BY-SA 4.0 许可协议

添加标准 主机文件-

 docker run -it ubuntu cat /etc/hosts

为服务器 ‘foo’ 添加一个映射 -

 docker run -it --add-host foo:10.0.0.3 ubuntu cat /etc/hosts

为多个服务器添加映射

docker run -it --add-host foo:10.0.0.3 --add-host bar:10.7.3.21 ubuntu cat /etc/hosts

参考 - Docker 现在支持添加主机映射

原文由 Vintesh 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进