码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 九、Docker容器的跨主机访问


    目录

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

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

    1.原理

    使用网桥实现跨主机容器连接:在同一个docker的主机中docker容器使用默认的docker0网桥来进行网络的通信,如果将连接容器的网桥也桥接到docker主机的网卡上,并且将网桥分配的ip地址与docker主机分配的ip地址设置为同一ip段,就相当于将容器与docker主机的网咯连接在了一起,就实现了跨主机的容器间的通信。

    在不同的docker主机中分别创建网桥,并使用这个网桥来连接docker主机的物理网卡和docker容器,就意味着将不同docker主机中的容器都分配在了同一网段下

    在这里插入图片描述

    2.案例

    1).准备

    虚拟机a

    ip: 192.168.153.131
    
    • 1

    虚拟机b

    ip: 192.168.153.132
    
    • 1

    2).docker网卡初始化

    虚拟机a

    docker network create --driver bridge --subnet 192.168.10.0/24 --gateway 192.168.10.1 net-test
    docker network ls
    
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    虚拟机b

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

    在这里插入图片描述

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

    虚拟机a

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

    在这里插入图片描述

    虚拟机b

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

    在这里插入图片描述

    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
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    虚拟机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
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    3.测试

    虚拟机a

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

    在这里插入图片描述

    虚拟机b

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

    在这里插入图片描述

  • 相关阅读:
    vue的基础的学习
    C Primer Plus(6) 中文版 第14章 结构和其他数据形式 14.5 嵌套结构
    中山大学软件工程学院区块链课程作业——信息传递网络与价值传递网络的区别和联系是什么?未来价值传递网络上可能产生的新业务有哪些?
    再谈C语言——理解指针(四)
    06 flink 的各个角色的交互
    [PAT-Advanced] A1025. PAT Ranking (25)
    苹果笔记本充不了电的解决办法
    【附源码】Python计算机毕业设计网上宠物店预约系统
    std::map中的自定义key避免踩坑
    [EI复现】基于主从博弈的新型城镇配电系统产消者竞价策略(Matlab代码实现)
  • 原文地址:https://blog.csdn.net/q908544703/article/details/126239742
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号