侧边栏壁纸
博主头像
zyixin

当你觉得为时已晚的时候,恰恰是最早的时候

  • 累计撰写 64 篇文章
  • 累计创建 0 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

Docker容器网络

zyixin
2022-04-07 / 0 评论 / 0 点赞 / 2,034 阅读 / 1,044 字
温馨提示:
本文最后更新于 2022-04-07,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

容器网络

Docker-容器网络

小规模docker环境大部分运行在单台主机上,如果公司大规模采用docker,那么多个宿主机上的docker如何互联

Docker默认的内部ip为172.17.42.0网段,所以必须要修改其中一台的默认网段以免ip冲突。
docker18版本修改

# vim /etc/sysconfig/docker-network
DOCKER_NETWORK_OPTIONS= --bip=172.18.42.1/16
#reboot

docker19版本修改

[root@docker ~]# cat /etc/docker/daemon.json 
{ "bip": "172.18.0.1/16" }

docker 130上:

# route add -net 172.18.0.0/16 gw 192.168.160.128

docker 128上:

# route add -net 172.17.0.0/16 gw 192.168.160.130

现在两台宿主机里的容器就可以通信了。

容器固定IP

docker安装后,默认会创建三种网络类型,bridge、host和none
显示当前网络:

[root@docker ~]# docker network list
NETWORK ID          NAME                DRIVER              SCOPE
ae90e1033698        bridge              bridge              local
2165e55c0513        host                host                local
95b533b1f7da        none                null                local

bridge:网络桥接
默认情况下启动、创建容器都是用该模式,所以每次docker容器重启时会按照顺序获取对应ip地址,这就导致容器每次重启,ip都发生变化

none:无指定网络
启动容器时,可以通过-network=none,docker容器不会分配局域网ip
host:主机网络
docker容器的网络会附属在主机上,两者是互通的

创建固定ip容器:
1、创建自定义网络类型,并且指定网段

# docker network create --subnet=192.168.0.0/16 staticnet

通过docker network ls可以查看网络类型中多了一个staticnet

2、使用新的网络类型创建并启动容器

# docker run -it --name userserver --net staticnet --ip 192.168.0.2 centos:7 /bin/bash

通过docker inspect可以查看容器ip为192.168.0.2,关闭容器并重启,发现容器ip并未发生改变

0

评论区