docker容器DNS的解决全过程

 更新时间:2025年09月11日 10:06:40   作者:IT杂人  
容器默认继承宿主机DNS配置,修改宿主机/etc/resolv.conf后容器文件不自动同步,显式挂载时,使用echo修改避免inode变化,确保容器生效,可借助stat命令查看inode信息,并通过docker启动配置管理文件映射

创建容器时指定DNS

#docker-compose
dns:
      - 8.8.8.8
      - 8.8.4.4
#docker run方式
--dns=8.8.8.8  --dns=8.8.4.4

使用默认的方式

会自动加载宿主机的/etc/resolv.conf内容到到容器

但修改宿主机的/etc/resolv.conf文件,不会同步更新到容器里的/etc/resolv.conf;

使用显示挂载的方式

修改宿主机时使用echo,因为使用vi会改变inode,修改后并不会相应变化到容器

#映射文件
"/etc/resolv.conf:/etc/resolv.conf"
#通过echo的方式修改宿主机文件
echo "nameserver 8.8.8.8" >> /etc/resolv.conf

设置docker启动配置

#vi /etc/docker/daemon.json,增加配置:
"dns" : ["114.114.114.114","8.8.8.8"]

附:

查看文件inode信息

stat filename

vi和echo对映射文件的影响

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Docker基础学习之数据管理

    Docker基础学习之数据管理

    我们在使用Docker 的时候,会产生很多数据,比如web服务器啊,数据库之类的,有时我们还需要备份或复制这些数据,这就需要涉及到Docker的数据管理了。这篇文章就给大家详细的介绍Docker的数据管理,感兴趣的朋友们可以参考借鉴,下面来一起看看吧。
    2016-10-10
  • 如何使用Docker部署Go Web应用的实现

    如何使用Docker部署Go Web应用的实现

    这篇文章主要介绍了如何使用Docker部署Go Web应用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • 如何使用 Dockerfile 创建一个简单容器

    如何使用 Dockerfile 创建一个简单容器

    这篇文章主要介绍了如何使用 Dockerfile 创建一个简单容器,Dockerfile 是用于指导 docker 创建自定义 image 的一系列指令,是用于创建 image 的蓝图,下文更多详细介绍需要的小伙伴可以参考一下
    2022-04-04
  • Docker 和 Containerd 目录结构及存储机制详解

    Docker 和 Containerd 目录结构及存储机制详解

    Docker和Containerd是两种流行的容器运行时工具,它们都有自己的目录结构和存储机制,本文详细介绍了Docker和Containerd的目录结构和存储机制,并对比了它们之间的主要区别,包括存储路径、挂载点管理、配置文件和日志文件,感兴趣的朋友一起看看吧
    2025-02-02
  • 在Ubuntu下通过Docker部署MySQL服务器的详细步骤

    在Ubuntu下通过Docker部署MySQL服务器的详细步骤

    Docker 是一个开源的容器化平台,能够让开发者将应用程序及其依赖打包成一个轻量级的、可移植的容器,MySQL 是一个流行的开源关系型数据库管理系统,本文给大家介绍了在Ubuntu下通过Docker部署MySQL服务器的详细步骤,需要的朋友可以参考下
    2025-01-01
  • Docker无法连接到Docker Hub和镜像加速器的问题详解

    Docker无法连接到Docker Hub和镜像加速器的问题详解

    这篇文章主要介绍了Docker容器无法连接到DockerHub或镜像加速器问题的步骤,包括检查和更换DNS服务器、测试网络连通性、使用镜像加速器和检查防火墙及安全组规则,通过逐一排查,可以解决大多数连接问题,需要的朋友可以参考下
    2025-03-03
  • 详解Docker 容器基础系统镜像打包

    详解Docker 容器基础系统镜像打包

    这篇文章主要介绍了详解Docker 容器基础系统镜像打包,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • Docker之redis安装全过程

    Docker之redis安装全过程

    本文简述了Redis部署流程,涵盖网络创建、安装配置(含远程访问、验证及持久化设置)、容器启动命令(需添加--privileged=true参数)及测试方法,提供实践参考
    2025-08-08
  • Docker的基本概念、安装步骤以及一些简单的用法

    Docker的基本概念、安装步骤以及一些简单的用法

    Docker 是一种开源的容器化平台,允许开发者打包应用及其依赖项到一个可移植的容器中,容器可以在任何支持Docker的环境中运行,这使得应用的部署和管理变得更加简单和高效,本文介绍Docker的基本概念、安装步骤以及一些简单的用法,感兴趣的朋友一起看看吧
    2024-11-11
  • Docker配置Redis集群及主从扩容与缩容的操作方法

    Docker配置Redis集群及主从扩容与缩容的操作方法

    这篇文章主要介绍了Docker配置Redis集群及主从扩容与缩容的操作方法,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-06-06

最新评论