centos修改docker网络配置方法分享

 更新时间:2017年03月12日 15:45:13   作者:布兰卡的博客  
本文给大家分享的是centos修改docker网络配置的方法,非常的实用,有需要的小伙伴可以参考下

在为客户使用docker运行php-fpm的时候,发现有的可以正常连接服务器,有的不可以。经过诊断发现客户端的ip网段和docker创建的默认docker0网卡网段冲突。

docker0默认的网络一般都是172.17.0.1/24或192.168.0.1/24。如果客户端的ip是172.17.111.1,则这时候访问基于docker部署的应用的时候,会遇到网络问题。

解决的方案,有两种。

1:使用host模式运行docker,但是需要删除默认的docker0虚拟网卡。在下次docker daemon重新启动的时候,又会重新创建这个docker0的虚拟网卡。

2:另一种解决方式,就是修改默认的docker0网络配置,使用另外的网段给docker使用。

如下步骤,是基于方案二的解决步骤,亲测可行。

#停止docker服务器,并删除docker0网卡
sudo systemctl restart docker
sudo ip link set dev docker0 down
sudo brctl delbr docker0

# 创建自定义bridge0网络,网段为10.255.254.1/24
sudo brctl addbr bridge0
sudo ip addr add 10.255.254.1/24 dev bridge0
sudo ip link set dev bridge0 up
#sudo ip link set dev bridge0 down ; sudo brctl delbr bridge0

# 确认网卡已经运行
ip addr show bridge0

# 创建docker运行的配置文件(如果文件夹不存在,手工创建)
sudo mkdir /etc/systemd/system/docker.service.d
sudo vi /etc/systemd/system/docker.service.d/docker.conf##输入如下内容

echo "[Service]
EnvironmentFile=-/etc/sysconfig/docker
ExecStart=
ExecStart=/usr/bin/dockerd $OPTIONS \
   $DOCKER_STORAGE_OPTIONS \
   $DOCKER_NETWORK_OPTIONS \
   $BLOCK_REGISTRY \
   $INSECURE_REGISTRY" > /etc/systemd/system/docker.service.d/docker.conf


# 修改docker服务启动默认绑定网卡为bridge0
echo 'DOCKER_NETWORK_OPTIONS="-b=bridge0"' >> /etc/sysconfig/docker

sudo systemctl daemon-reload

sudo systemctl restart docker

参考链接:

https://opskumu.gitbooks.io/docker/content/chapter6.html

https://www.jb51.net/softjc/35980.html

https://docs.docker.com/engine/admin/systemd/#custom-docker-daemon-options

相关文章

  • Docker镜像上传到阿里云的步骤详解

    Docker镜像上传到阿里云的步骤详解

    本篇文章主要介绍了Docker镜像上传到阿里云的步骤详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • 解决Docker中的error during connect异常情况

    解决Docker中的error during connect异常情况

    这篇文章主要介绍了解决Docker中的error during connect异常情况,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • Docker安装MinIO的实现示例

    Docker安装MinIO的实现示例

    本文主要介绍了Docker安装MinIO的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-08-08
  • docker容器使用内存大小限制方法

    docker容器使用内存大小限制方法

    我们使用docker时,经常会遇到docker容器使用内存大于docker宿主机内存,导致宿主机奔溃,从而影响其他宿主机上容器的运行,下面这篇文章主要给大家介绍了关于docker容器使用内存大小限制的相关资料,需要的朋友可以参考下
    2023-06-06
  • Docker常用命令与小技巧汇总

    Docker常用命令与小技巧汇总

    这篇文章主要给大家介绍了关于Docker常用命令与小技巧的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Docker具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-10-10
  • 删除Docker镜像、容器和卷的教程指南

    删除Docker镜像、容器和卷的教程指南

    Docker 可以轻松地将应用程序和服务封装在容器中,以便在任何地方运行,然而,在使用 Docker 的过程中,很容易积累大量未使用的镜像、容器和数据卷,这些会使输出杂乱,并占用磁盘空间,所以本文给大家介绍了如何删除Docker镜像、容器和卷,需要的朋友可以参考下
    2024-10-10
  • Docker Desktop安装本地Kubernetes集群的实现

    Docker Desktop安装本地Kubernetes集群的实现

    Kubernetes用于协调高度可用的计算机集群,本文主要介绍了Docker Desktop安装本地Kubernetes集群的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-02-02
  • docker根据已生成的容器生成docker-compose.yml文件的实现步骤

    docker根据已生成的容器生成docker-compose.yml文件的实现步骤

    这篇文章主要给大家介绍了docker 如何根据已生成的容器生成docker-compose.yml 文件,文中有详细的代码示例和实现步骤,对大家的学习有一定的帮助,需要的朋友可以参考下
    2023-10-10
  • 内网环境下registry搭建步骤详解

    内网环境下registry搭建步骤详解

    这篇文章主要为大家介绍了内网环境下的registry搭建步骤详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • docker rm -f 容器id 无效的问题解决

    docker rm -f 容器id 无效的问题解决

    当遇到“Error response from daemon: cannot stop container: d208b8055fd0: permission denied”错误,表示缺乏停止Docker容器的权限,本文就来介绍一下如何解决,感兴趣的可以了解一下
    2024-09-09

最新评论