九、Docker容器的跨主机访问

目录

  • 一、使用网桥实现跨主机容器连接
    • 1.原理
    • 2.案例
      • 1).准备
      • 2).docker网卡初始化
      • 3).使用自定义网桥,指定端口启动容器
      • 4).设置静态路由
  • 3.测试

一、使用网桥实现跨主机容器连接

1.原理

九、Docker容器的跨主机访问_第1张图片

2.案例

1).准备

虚拟机a

ip: 192.168.153.131

虚拟机b

ip: 192.168.153.132

2).docker网卡初始化

虚拟机a

docker network create --driver bridge --subnet 192.168.10.0/24 --gateway 192.168.10.1 net-test
docker network ls

九、Docker容器的跨主机访问_第2张图片

虚拟机b

docker network create --driver bridge --subnet 192.168.20.0/24 --gateway 192.168.20.1 net-test
docker network ls

九、Docker容器的跨主机访问_第3张图片

3).使用自定义网桥,指定端口启动容器

虚拟机a

docker run -it --network=net-test -p 8080:80  centos:7 /bin/bash

九、Docker容器的跨主机访问_第4张图片

虚拟机b

docker run -it --network=net-test -p 8080:80  centos:7 /bin/bash

九、Docker容器的跨主机访问_第5张图片

4).设置静态路由

分别对虚拟机a,虚拟机b设置静态路由,实现虚拟机a可以直接访问虚拟机b的docker net-test 网卡里面的容器,虚拟机b可以直接访问虚拟机a的docker net-test 网卡里面的容器

route add -net 192.168.20.0(虚拟机b 网段) netmask 255.255.255.0(虚拟机b 子网掩码) gw 192.168.153.131(虚拟机b ip)

虚拟机a

  route add -net 192.168.20.0/24 gw 192.168.153.132
	或者
  route add -net 192.168.20.0 netmask 255.255.255.0 gw 192.168.153.132

九、Docker容器的跨主机访问_第6张图片

虚拟机b

    route add -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.153.131
	或者
    route add -net 192.168.10.0/24 gw 192.168.153.131

在这里插入图片描述

3.测试

虚拟机a

docker run -it  --name test --network net-test mycentos:1.0  /bin/bash

九、Docker容器的跨主机访问_第7张图片

虚拟机b

docker run -it  --name test --network net-test mycentos:1.0  /bin/bash

九、Docker容器的跨主机访问_第8张图片

你可能感兴趣的:(Docker,docker,容器,运维)