首页/云/云与容器速查/容器 DNS 与 --add-host
本包目录(340 条)
云基础概念44 条计算与存储56 条网络与安全组33 条
容器与 Docker106 条
Kubernetes68 条容器排障33 条

容器 DNS 与 --add-host

容器 DNS 来源优先级:--dns > daemon.json > 宿主 resolv.conf;用户自定义网络内置 127.0.0.11 解析服务名与别名;--add-host 可模拟 hosts 映射。

云与容器速查云更新于 2026-10-12
显式 DNS--dns 223.5.5.5 --dns-search corp.example.com
内置解析自定义网络用 127.0.0.11 解析服务名/别名/容器名
hosts 注入--add-host api.local:10.0.0.8(可多次)
查看docker exec 容器 cat /etc/resolv.conf

使用示例

使用示例
docker run --rm --dns 223.5.5.5 --add-host api.local:10.0.0.8 alpine sh -c 'cat /etc/resolv.conf; getent hosts api.local'
默认 bridge 网络不做容器名解析:要按名字互访必须用自定义网络或 --add-host。

易错点

  • 内网域名解析不了:容器用了宿主 resolv.conf 而宿主本就不能解析
  • 改了 daemon.json DNS 不生效:容器需重建,运行中的不改

数据来源与参考

  • Docker Docs:Container networking(DNS)
  • Docker Docs:docker run --dns

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌