更改docker网络MTU的两种方法实现

 更新时间:2026年06月12日 09:18:36   作者:云原生与数据笔记  
本文介绍了两种解决Docker网络MTU配置问题的方法,第一种是直接修改docker0网桥的MTU值,第二种是创建自定义网桥并指定MTU值,,两种方法都能有效解决MTU不匹配导致的网络问题,下面就来详细的介绍一下

直接解决 —— 修改 docker0 MTU 配置后重启 docker

方式一、修改 daemon.json 文件

$ vim /etc/docker/daemon.json
{
  "mtu": 1400
}
$ systemctl restart docker

方式二、修改 systemd unit file 指明启动参数 --mtu (不同系统位置可能不同

$ vim /lib/systemd/system/docker.service 
ExecStart=/usr/bin/dockerd --mtu 1400 -H fd:// --containerd=/run/containerd/containerd.sock
$ systemctl daemon-reload
$ systemctl restart docker

注意,修改重启后,如果 docker0 上当前没有容器运行。使用 ifconfig/ip 命令会看到处于 DOWN 状态的 docker0 MTU 仍然会显示为 1500,创建容器后即会变成 1400

间接解决 —— 不使用 docker0 网桥

即不使用默认网络,指定 opt com.docker.network.driver.mtu

$ docker network create \
  --opt com.docker.network.bridge.name=mtu0 \
  --opt com.docker.network.driver.mtu=1400 \
  --driver=bridge \
  --subnet=172.28.0.0/16 \
  --gateway=172.28.0.1 \
  mybridge
 $ docker run --rm -it --name test --network mybridge alpine 
 # ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
25: eth0@if26: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1400 qdisc noqueue state UP
    link/ether 02:42:ac:1c:00:02 brd ff:ff:ff:ff:ff:ff
    inet 172.28.0.2/16 brd 172.28.255.255 scope global eth0
       valid_lft forever preferred_lft forever

到此这篇关于更改docker网络MTU的两种方法实现的文章就介绍到这了,更多相关docker更改网络MTU内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用 Docker 搭建适用于 HomeLab 的书签导航应用

    使用 Docker 搭建适用于 HomeLab 的书签导航应用

    在使用新私有化部署的书签导航应用一个月之后,我们来聊聊书签导航工具,以及介绍如何使用 Docker 在几分钟之内部署属于你自己的书签导航应用
    2022-02-02
  • 解决docker 容器设置中文语言包出现的问题

    解决docker 容器设置中文语言包出现的问题

    这篇文章主要介绍了解决docker 容器设置中文语言包出现的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • docker搭建jenkins服务的示例

    docker搭建jenkins服务的示例

    这篇文章主要介绍了docker搭建jenkins服务的示例,帮助大家更好的理解和使用docker容器,感兴趣的朋友可以了解下
    2020-09-09
  • Docker挂载资料卷部署Nginx

    Docker挂载资料卷部署Nginx

    这篇文章介绍了Docker挂载资料卷部署Nginx,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-01-01
  • 将博客迁移至docker纪实

    将博客迁移至docker纪实

    作者个人博客一直是跑在阿里云主机上的,最近接触了docker 心血来潮想把自己的应用打包到docker容器中去,方便以后的迁移部署,这里把经验给大家总结分享下
    2017-05-05
  • Docker Desktop虚拟化不支持导致启动失败问题及解决

    Docker Desktop虚拟化不支持导致启动失败问题及解决

    文章详细介绍了Docker Desktop启动失败的常见原因及解决方法,包括BIOS/UEFI设置、Windows功能开启、重置环境、处理公司电脑策略、升级Windows等
    2026-01-01
  • Docker 本地部署 CSR 前端项目完整指南

    Docker 本地部署 CSR 前端项目完整指南

    本文详细介绍了使用Docker部署Vue3+Vite前端项目的完整流程,通过这套方案,开发者可以轻松实现前端项目的容器化部署,确保开发、测试和生产环境的一致性,感兴趣的可以了解一下
    2026-01-01
  • Docker批量容器编排的实现

    Docker批量容器编排的实现

    这篇文章主要介绍了Docker批量容器编排的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Docker容器中Elasticsearch内存不足问题的排查与解决方案

    Docker容器中Elasticsearch内存不足问题的排查与解决方案

    在使用Docker运行Elasticsearch(ES)时,可能会遇到内存不足的问题,导致ES无法启动,以下是一次完整的排查和解决过程,需要的朋友可以参考下
    2025-08-08
  • 使用Docker自动化部署项目的全过程

    使用Docker自动化部署项目的全过程

    文章介绍了两个项目的Docker部署方案:一是通过Dockerfile构建Boost搜索引擎镜像并配置依赖库,二是使用docker-compose编排Web应用、MySQL、Redis及编译器服务,实现多容器协同部署与环境隔离
    2025-07-07

最新评论