爆款云主机2核4G限时秒杀,88元/年起!
查看详情

活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心

      8,docker基础之---桥接主机模式与特权指令

      首页 知识中心 其他 文章详情页

      8,docker基础之---桥接主机模式与特权指令

      2023-05-09 06:04:16 阅读次数:129

      centos,docker,tomcat

      #安装docker之后默认三种网络模式
      [root@docker ~]# docker network ls
      NETWORK ID NAME DRIVER SCOPE
      5e1a189fbfa1 bridge bridge local #bridge就是桥接模式
      8b974a9681af host host local #host就是主机模式
      0456f88c6851 none null local #none就是无网络模式
      [root@docker ~]#

      bridge桥接实战

      8,docker基础之---桥接主机模式与特权指令

      如果开启两个容器再看则是:
      #开启一个容器
      [root@docker ~]# docker run -itd centos:7
      afe3bc308a229066a896711844cd133419ddd9a2ed0ac4de5535e4b0288aed64
      #开启第二个容器
      [root@docker ~]# docker run -itd centos:7
      3866dbef91952a87fa17cc975f3197f26460b8bee50b6f49a60e7760c17174aa
      #查看运行状态
      [root@docker ~]# docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      3866dbef9195 centos:7 "/bin/bash" 12 seconds ago Up 11 seconds friendly_tesla
      afe3bc308a22 centos:7 "/bin/bash" 15 seconds ago Up 13 seconds serene_shaw
      [root@docker ~]#使用ip ad再次进行查看一下

      8,docker基础之---桥接主机模式与特权指令

      例如进去一个容器进行查看:
      #进入容器
      [root@docker ~]# docker exec -it 3866dbef9195 /bin/bash
      #查看IP发现执行命令错误没有安装扩展安装net-tools即可
      [root@3866dbef9195 /]# ifconfig
      bash: ifconfig: command not found
      #进行安装
      [root@3866dbef9195 /]# yum install net-tools -y

      8,docker基础之---桥接主机模式与特权指令

      查看路由表:
      [root@b60f6ffa49a1 /]# route -n
      Kernel IP routing table
      Destination Gateway Genmask Flags Metric Ref Use Iface
      0.0.0.0 172.17.0.1 0.0.0.0 UG 0 0 0 eth0
      172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
      [root@b60f6ffa49a1 /]#从上面可以看出172.17.0.1是他的网关
      ROOT目录下安装bridge-utils【作用:可以查看这台机器的桥接作用】
      [root@docker ~]# yum install bridge-utils -y
      安装好之后查看docker容器的桥接情况:
      [root@docker ~]# docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      56a8ff3cce88 centos:7 "/bin/bash" 2 minutes ago Up 2 minutes distracted_mendeleev
      b60f6ffa49a1 centos:7 "/bin/bash" 9 minutes ago Up 9 minutes jovial_jepsen
      [root@docker ~]#
      [root@docker ~]# brctl show
      bridge name bridge id STP enabled interfaces
      docker0 8000.024235cd6ee4 no veth04ad9f4
      veth9195668
      [root@docker ~]#看尾数一样即可
      例如我们在开启一台容器然后进行查看一下:

      8,docker基础之---桥接主机模式与特权指令

      注意:外面机器无法直接访问容器必须容器进行端口映射才可进行访问

      host主机实战

      例如我们开启nginx镜像进行测试:
      #查看镜像
      [root@docker ~]# docker images
      REPOSITORY TAG IMAGE ID CREATED SIZE
      mycentos nginx d5a3dabc2f10 2 minutes ago 522MB
      centos 7 eeb6ee3f44bd 17 months ago 204MB
      [root@docker ~]#
      启动镜像:(选取主机host模式)
      [root@docker ~]# docker run -itd --net=host mycentos:nginx /usr/local/nginx/sbin/nginx -g "daemon off;"
      b88bff9005cf622b78b2702e76de150751a746ae480e189c2ea75bb399e5ede2
      [root@docker ~]# docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      b88bff9005cf mycentos:nginx "/usr/local/nginx/sb…" 6 seconds ago Up 6 seconds lucid_murdock
      [root@docker ~]#


      docker run -itd --net=host mycentos:nginx /usr/local/nginx/sbin/nginx -g "daemon off;"
      #这里的--net=host可以选取主机模式不写则默认为桥接docker0模式
      --net=host 主机模式
      查看IP地址:(如图所示没有新启动容器的IP地址如果没有设置host主机模式则会出现一个容器地址)

      8,docker基础之---桥接主机模式与特权指令

      查看此容器的详情信息:
      [root@docker ~]# docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      b88bff9005cf mycentos:nginx "/usr/local/nginx/sb…" 4 minutes ago Up 4 minutes lucid_murdock
      [root@docker ~]# docker inspect b88bff9005cf

      8,docker基础之---桥接主机模式与特权指令

      因为nginx的端口默认80启动之后会占用咱们的宿主机所以咱们查看一下端口占用情况:(可以看到已经被占用)
      [root@docker ~]# netstat -tunlp | grep 80
      tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 4562/nginx: master
      [root@docker ~]#
      宿主机访问测试:(发现访问不了检查防火墙)

      8,docker基础之---桥接主机模式与特权指令

      查看防火墙允许:

      8,docker基础之---桥接主机模式与特权指令

      放行80端口即可:
      [root@docker ~]# firewall-cmd --znotallow=public --add-port=80/tcp --permanent
      success
      [root@docker ~]#
      重新加载防火墙:
      [root@docker ~]# firewall-cmd --reload
      success
      [root@docker ~]#
      再次进行访问测试:

      8,docker基础之---桥接主机模式与特权指令

      删除容器重新进行测试:
      [root@docker ~]# docker rm -f $(docker ps -a -q)
      b88bff9005cf
      [root@docker ~]#
      如果不指定host主机模式:
      [root@docker ~]# docker run -itd mycentos:nginx /usr/local/nginx/sbin/nginx -g "daemon off;"
      56c46cc0db37f7e7763d5926ab3372073b6f91d73317cc277d2d1f2662ee9ccd
      [root@docker ~]#
      是访问不了的:

      8,docker基础之---桥接主机模式与特权指令

      none无网络实战

      在这种模式下不会有IP地址的:(例如我们启动一个centos设置none模式)
      [root@docker ~]# docker run -itd --net=none centos:7 /bin/bash
      9367d758f52a8925377bef8b2ab97ae34cbf501be9f15a77bfb75b3453de0045
      [root@docker ~]#
      查看IP看一下:

      8,docker基础之---桥接主机模式与特权指令

      查看一下此容器的详情信息:
      [root@docker ~]# docker inspect 9367d758f52a

      8,docker基础之---桥接主机模式与特权指令

      也就是说他没有IP地址也就是断网的意思一般用于测试学习很少用(无法连接外网)

      Link实现单向通信

      例如我们开启一台mysql和centos:
      [root@docker ~]# docker run --name mydb -e MYSQL_ROOT_PASSWORD=adb123456 -d mysql:5.7
      a376a219d21a1891960e3d5b346b1ee9bf6245e8b6076b63d41f05c57304f7a9
      [root@docker ~]#
      [root@docker ~]# docker run -itd centos:7
      324da167f637bd818ba3e76f797e6a18e20acd1222a42f098174276b076a9a02
      [root@docker ~]#
      进行查看启动:
      [root@docker ~]# docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      324da167f637 centos:7 "/bin/bash" 44 seconds ago Up 43 seconds charming_torvalds
      a376a219d21a mysql:5.7 "docker-entrypoint.s…" About a minute ago Up About a minute 3306/tcp, 33060/tcp mydb
      [root@docker ~]#
      进行查看一下mysql的IP地址:
      [root@docker ~]# docker inspect a376a219d21a

      8,docker基础之---桥接主机模式与特权指令

      进行查看一下centos的IP地址:
      [root@docker ~]# docker inspect 324da167f637

      8,docker基础之---桥接主机模式与特权指令

      一般情况下MySQL和centos的IP会互相通信因为他们都是桥接docker0的网卡

      注意:由于一台或者多台容器对应mysql数据库但是每次启动IP地址都不唯一所以咱们采用Link的方式及以命名进行单项通信不用管IP地址。
      #我们重新启动两台centos命名为tomcat1和2作为实验link
      [root@docker ~]# docker run -itd --name tomcat1 --link mydb centos:7
      ee972f975128650106b28da403bbb65dda883c26da36127441e0fc190b678878
      [root@docker ~]# docker run -itd --name tomcat2 --link mydb centos:7
      042cab2e5d1cbc8724e38ed0138b90a7c85a5e2f497cfd8661d2e89dc43e444e
      [root@docker ~]#
      进入tomcat1容器测试:
      [root@docker ~]# docker exec -it ee972f975 /bin/bash
      #pingIP地址测试OK的
      [root@ee972f975128 /]# ping 172.17.0.2
      PING 172.17.0.2 (172.17.0.2) 56(84) bytes of data.
      64 bytes from 172.17.0.2: icmp_seq=1 ttl=64 time=0.226 ms
      64 bytes from 172.17.0.2: icmp_seq=2 ttl=64 time=0.100 ms
      ^C
      --- 172.17.0.2 ping statistics ---
      2 packets transmitted, 2 received, 0% packet loss, time 1003ms
      rtt min/avg/max/mdev = 0.100/0.163/0.226/0.063 ms
      #ping数据库的命名测试也是OK的
      [root@ee972f975128 /]# ping mydb
      PING mydb (172.17.0.2) 56(84) bytes of data.
      64 bytes from mydb (172.17.0.2): icmp_seq=1 ttl=64 time=0.057 ms
      64 bytes from mydb (172.17.0.2): icmp_seq=2 ttl=64 time=0.168 ms
      ^C
      --- mydb ping statistics ---
      2 packets transmitted, 2 received, 0% packet loss, time 1001ms
      rtt min/avg/max/mdev = 0.057/0.112/0.168/0.056 ms
      [root@ee972f975128 /]#
      进入mysql容器进行测试;

      8,docker基础之---桥接主机模式与特权指令

      #可以看到上面打开的tomcat1的Ip地址是172.17.0.4
      #进入mysql进行ping测试

      [root@docker ~]# docker exec -it a376a219d21a /bin/bash

      #发现数据库中没有ping命令所以需要手动安装
      root@a376a219d21a:/# ping 172.17.0.4
      bash: ping: command not found
      root@a376a219d21a:/#
      #先更新然后安装

      root@a376a219d21a:/# apt-get update
      root@a376a219d21a:/# apt-get install net-tools
      root@a376a219d21a:/# apt-get install iputils-ping -y


      #再次进行ping测试
      root@a376a219d21a:/# ping tomcat1
      ping: tomcat1: Name or service not known
      root@a376a219d21a:/# ping tomcat2
      ping: tomcat2: Name or service not known

      root@a376a219d21a:/#发现ping不通说明咱们的link已经执行只有toumcat进行单向通信

      brige桥接实现双向通信

      下面实验进行双向通信的实验:
      #查看网络模式
      [root@docker ~]# docker network ls
      NETWORK ID NAME DRIVER SCOPE
      11ec5878b5e9 bridge bridge local
      8b974a9681af host host local
      0456f88c6851 none null local
      [root@docker ~]#
      #新添加一个网桥
      [root@docker ~]# docker network create -d bridge my_bridge
      446f47686eaacda025e6ba532b64113b3f5d80922a8779238978a938fde6516f
      [root@docker ~]# docker network ls
      NETWORK ID NAME DRIVER SCOPE
      11ec5878b5e9 bridge bridge local
      8b974a9681af host host local
      446f47686eaa my_bridge bridge local #新添加的网桥
      0456f88c6851 none null local
      [root@docker ~]#
      新启动两个容器命名为tomcat:
      [root@docker ~]# docker run -itd --name tomcat centos:7
      195622117fedf62cb97737779bff9e0cdd38166f388646a06f6bdc9a34685a01
      再次启动一台命名为redis:
      [root@docker ~]# docker run -itd --name redis centos:7
      bb1e58cdd9292b21740b8fd58bc06702466460255d782f352b59b8fafef109e9
      假如这两台容器能够进行双向通信tomcat能够访问redis同样redis也可以访问tomcat:

      只需把这两个容器加入到咱们新创建的网桥中:

      [root@docker ~]# docker network ls
      NETWORK ID NAME DRIVER SCOPE
      11ec5878b5e9 bridge bridge local
      8b974a9681af host host local
      446f47686eaa my_bridge bridge local #加入到这个网桥
      0456f88c6851 none null local
      [root@docker ~]# docker network connect my_bridge tomcat
      [root@docker ~]# docker network connect my_bridge redis
      [root@docker ~]#
      进行测试:
      #进入容器测试:
      [root@docker ~]# docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      bb1e58cdd929 centos:7 "/bin/bash" 4 minutes ago Up 4 minutes redis
      195622117fed centos:7 "/bin/bash" 5 minutes ago Up 5 minutes tomcat
      #进入redis与tomcat进行测试
      [root@docker ~]# docker exec -it bb1e58cdd929 /bin/bash
      [root@bb1e58cdd929 /]# ping tomcat
      PING tomcat (172.18.0.2) 56(84) bytes of data.
      64 bytes from tomcat.my_bridge (172.18.0.2): icmp_seq=1 ttl=64 time=0.105 ms
      64 bytes from tomcat.my_bridge (172.18.0.2): icmp_seq=2 ttl=64 time=0.102 ms
      ^C
      --- tomcat ping statistics ---
      2 packets transmitted, 2 received, 0% packet loss, time 1003ms
      rtt min/avg/max/mdev = 0.102/0.103/0.105/0.010 ms
      [root@bb1e58cdd929 /]# exit
      exit
      #进入redis与tomcat通信测试
      [root@docker ~]# docker exec -it 195622117fed /bin/bash
      [root@195622117fed /]# ping redis
      PING redis (172.18.0.3) 56(84) bytes of data.
      64 bytes from redis.my_bridge (172.18.0.3): icmp_seq=1 ttl=64 time=0.046 ms
      64 bytes from redis.my_bridge (172.18.0.3): icmp_seq=2 ttl=64 time=0.297 ms
      64 bytes from redis.my_bridge (172.18.0.3): icmp_seq=3 ttl=64 time=0.273 ms
      ^C
      --- redis ping statistics ---
      3 packets transmitted, 3 received, 0% packet loss, time 2003ms
      rtt min/avg/max/mdev = 0.046/0.205/0.297/0.113 ms
      [root@195622117fed /]#

      docker容器的特权模式

      先启动一个centos:7并且命名为mycentos的容器:
      [root@docker ~]# docker run -itd --name mycentos centos:7 /bin/bash
      be5646d3d2184a4d957f564193ac39f5350860980c9b00608dfe65d079423692
      #进入容器
      [root@docker ~]# docker exec -it be5646d /bin/bash
      #安装net-tools进行查看路由表
      [root@be5646d3d218 /]# yum install net-tools
      #查看路由表
      [root@be5646d3d218 /]# route -n
      Kernel IP routing table
      Destination Gateway Genmask Flags Metric Ref Use Iface
      0.0.0.0 172.17.0.1 0.0.0.0 UG 0 0 0 eth0
      172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
      [root@be5646d3d218 /]#如果我们不想要这个网关可以给他进行删除测试
      [root@be5646d3d218 /]# route del default gw 172.17.0.1
      SIOCDELRT: Operation not permitted
      [root@be5646d3d218 /]#执行之后发现删除报错不能删除没有权限
      [root@be5646d3d218 /]#所以我们需要给这个容器开启特权模式
      新开启一台容器命名为mycentos1并且为他赋予特权模式:
      [root@docker ~]# docker run -itd --privileged=true --name mycentos1 centos:7 /bin/bash
      24e3e228967b40abc08988146b0e97b792b3231e803e218dec4cda23db486533
      #进入容器
      [root@docker ~]# docker exec -it 24e3e22 /bin/bash
      #安装网络工具
      [root@24e3e228967b /]# yum install net-tools
      #查看路由表
      [root@24e3e228967b /]# route -n
      Kernel IP routing table
      Destination Gateway Genmask Flags Metric Ref Use Iface
      0.0.0.0 172.17.0.1 0.0.0.0 UG 0 0 0 eth0
      172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
      [root@24e3e228967b /]#进行删除网关测试
      [root@24e3e228967b /]# route del default gw 172.17.0.1
      #删除成功再次进行查看路由表
      [root@24e3e228967b /]# route -n
      Kernel IP routing table
      Destination Gateway Genmask Flags Metric Ref Use Iface
      172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
      [root@24e3e228967b /]#

      Volume数据共享

      创建一个dockerfile设置一个volume挂载点:
      FROM centos:7
      VOLUME ["/usr/local"]
      [root@docker ~]# cat dockerfile
      FROM centos:7
      VOLUME ["/usr/local"]
      [root@docker ~]#
      #进行执行创建
      [root@docker ~]# docker build -t centos:v1 .
      启动一个容器:
      [root@docker ~]# docker run -itd --name centos7 4e60f71029a5 /bin/bash
      b62cc708914542cf68ccb1969565ebb019b8e9cbcfcb1bc2bbda92b4346d76d9
      [root@docker ~]#
      查看此容器的详情信息:
      [root@docker ~]# docker inspect b62cc7

      8,docker基础之---桥接主机模式与特权指令

      咱们把宿主机路径进行复制然后进入此路径:
      [root@docker ~]# cd /var/lib/docker/volumes/082d1ae329ef15538bac8a72aecef31d69291107884b05c3338d195f046ddda6/_data
      [root@docker _data]#
      #通过ll可以看到有很多文件也就是容器里面的文件
      [root@docker _data]# ll
      总用量 0
      drwxr-xr-x 2 root root 6 4月 11 2018 bin
      drwxr-xr-x 2 root root 6 4月 11 2018 etc
      drwxr-xr-x 2 root root 6 4月 11 2018 games
      drwxr-xr-x 2 root root 6 4月 11 2018 include
      drwxr-xr-x 2 root root 6 4月 11 2018 lib
      drwxr-xr-x 2 root root 6 4月 11 2018 lib64
      drwxr-xr-x 2 root root 6 4月 11 2018 libexec
      drwxr-xr-x 2 root root 6 4月 11 2018 sbin
      drwxr-xr-x 5 root root 49 2月 17 09:31 share
      drwxr-xr-x 2 root root 6 4月 11 2018 src
      [root@docker _data]#
      进入容器查看一下:
      [root@docker ~]# docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      b62cc7089145 4e60f71029a5 "/bin/bash" 6 minutes ago Up 6 minutes centos7
      [root@docker ~]# docker exec -it b62cc7089145 /bin/bash
      [root@b62cc7089145 /]#
      进入/usr/local通过ll查看发现其内容文件均且一样:
      [root@b62cc7089145 ~]# cd /usr/local/

      8,docker基础之---桥接主机模式与特权指令

      8,docker基础之---桥接主机模式与特权指令

      在此路径进行创建一个文本文档在容器进行查看发现一致说明同步:
      [root@docker _data]# cat > 123.txt
      666
      [root@docker _data]# cat 123.txt
      666
      [root@docker _data]#
      [root@b62cc7089145 local]# cat 123.txt
      666
      [root@b62cc7089145 local]#

      实验1(在宿主机启动nginx修改网页的html内容为thins is my nginx然后挂载到新开启的三个nginx容器中进行同步内容)

      #启动nginx
      [root@docker nginx-1.16.0]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
      #防火墙为开启状态放行80端口即可
      [root@docker nginx-1.16.0]# firewall-cmd --add-service=http --permanent
      [root@docker nginx-1.16.0]# firewall-cmd --add-port=80/tcp --permanent
      #重启防火墙
      [root@docker nginx-1.16.0]# firewall-cmd --reload
      [root@docker nginx-1.16.0]#查看是否启动成功
      [root@docker nginx-1.16.0]# ps -ef | grep nginx
      root 4516 1 0 09:51 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
      nobody 4517 4516 0 09:51 ? 00:00:00 nginx: worker process
      root 4521 1510 0 09:52 pts/0 00:00:00 grep --color=auto nginx

      8,docker基础之---桥接主机模式与特权指令

      #进行修改内容
      [root@docker ~]# cd /usr/local/nginx/html/
      [root@docker html]# cat > index.html
      thins is my nginx
      [root@docker html]# cat index.html
      thins is my nginx
      [root@docker html]#

      8,docker基础之---桥接主机模式与特权指令

      启动nginx1
      [root@docker html]# docker run -itd -p 8080:80 -v /usr/local/nginx/html:/usr/local/nginx/html --name nginx1 mycentos:nginx /usr/local/nginx/sbin/nginx -g "daemon off;"
      c2add1ea75b032a0c9ead2f09914e0db45899a5a15b72510f0ccf953033ca927
      [root@docker html]#执行成功之后即可访问容器的8080端口即可与宿主机一致

      -p 8080:80表示宿主机的8080端口映射的容器nginx的80端口
      -v /usr/local/nginx/html:/usr/local/nginx/html 冒号前面表示宿主机路径后面表示容器路径
      --name nginx1 mycentos:nginx 表示启动容器mycentos:nginx命名为nginx1
      /usr/local/nginx/sbin/nginx -g "daemon off;" 表示以前台运行启动

      8,docker基础之---桥接主机模式与特权指令

      启动nginx2(容器与容器之间共享)
      [root@docker html]# docker run -itd -p 8081:80 --volumes-from nginx1 --name nginx2 mycentos:nginx /usr/local/nginx/sbin/nginx -g "daemon off;"
      78eb87dcc1cfd5f60b3994c1b875b212cc07508fcf8f7e05f10059fee8603027
      [root@docker html]#直接访问8081端口即可
      --volumes-from nginx1 表示共享nginx1的网页内容

      8,docker基础之---桥接主机模式与特权指令

      启动nginx3
      [root@docker html]# docker run -itd -p 8082:80 --volumes-from nginx1 --name nginx3 mycentos:nginx /usr/local/nginx/sbin/nginx -g "daemon off;"
      fd1aa606a1986b48d5f872d77838d851c2aafa5dd56e2f6f831b130fe297471b
      [root@docker html]#

      8,docker基础之---桥接主机模式与特权指令

      现在进行修改宿主机的html内容看一下是否均可同步:
      [root@docker ~]# cd /usr/local/nginx/html/
      [root@docker html]# cat > index.html
      docker
      ^C
      [root@docker html]# cat index.html
      docker
      [root@docker html]#

      8,docker基础之---桥接主机模式与特权指令

      8,docker基础之---桥接主机模式与特权指令

      8,docker基础之---桥接主机模式与特权指令

      实验所得:假如其中nginx2挂掉了重新启动一台命名和端口一样数据都是且共享的

      版权声明:本文内容来自第三方投稿或授权转载,原文地址:https://blog.51cto.com/lyx888/6099704,作者:冷影玺,版权归原作者所有。本网站转在其作品的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如因作品内容、版权等问题需要同本网站联系,请发邮件至ctyunbbs@chinatelecom.cn沟通。

      上一篇:磁盘加密

      下一篇:5,docker基础之---Dockerfile构建Nginx

      相关文章

      2025-05-19 09:04:38

      完美解决tomcat启动异常:Invalid byte tag in constant pool: 19;Unable to process Jar entry [module-info.class]

      完美解决tomcat启动异常:Invalid byte tag in constant pool: 19;Unable to process Jar entry [module-info.class]

      2025-05-19 09:04:38
      jar , tomcat , 版本 , 配置文件
      2025-05-14 09:51:21

      Docker大学生看了都会系列(十、Docker网络)

      docker使用Linux桥接网卡,在宿主机虚拟一个docker容器网桥(docker0),docker启动一个容器时会根据docker网桥的网段分配给容器一个IP地址,称为Container-IP,同时Docker网桥是每个容器的默认网络网关。

      2025-05-14 09:51:21
      docker , Docker , 容器 , 宿主机 , 模式 , 网桥 , 网络
      2025-05-14 09:51:21

      Docker大学生看了都会系列(三、常用帮助、镜像、容器命令)

      Docker大学生看了都会系列(三、常用帮助、镜像、容器命令)

      2025-05-14 09:51:21
      container , docker , 命令 , 容器 , 查看 , 镜像
      2025-04-14 09:26:51

      如何在 Ubuntu 上安装 Docker:详细步骤指南

      在使用 Docker 时,如果遇到 Command ‘docker’ not found 的错误,说明系统上尚未安装 Docker。本文将详细介绍如何在 Ubuntu 系统上安装 Docker,并验证其是否正常运行。

      2025-04-14 09:26:51
      docker , Docker , 命令 , 安装 , 运行
      2025-04-11 07:16:05

      部署loki,grafana 以及springcloud用法举例

      部署loki,grafana 以及springcloud用法举例

      2025-04-11 07:16:05
      compose , docker , grafana , springcloud , 日志 , 部署
      2025-04-11 07:16:05

      docker快速部署gitlab

      docker快速部署gitlab

      2025-04-11 07:16:05
      docker , gitlab , url , 主机名 , 容器 , 默认
      2025-04-11 07:11:40

      java.lang.IllegalArgumentException: Request header is too large 解决方法

      java.lang.IllegalArgumentException: Request header is too large 解决方法

      2025-04-11 07:11:40
      header , tomcat , 修改 , 请求 , 配置 , 配置文件
      2025-04-09 09:13:17

      解决tomcat部署项目中碰到的几个问题

      在tomcat上部署项目并进行测试,经常会碰到各种问题。在不同的操作系统上部署,对问题的解决也会有一些差异。

      2025-04-09 09:13:17
      data , redis , tomcat , 信息
      2025-04-09 09:11:38

      tomcat指定jdk路径

      tomcat指定jdk路径

      2025-04-09 09:11:38
      bat , jdk , tomcat , 指定 , 路径
      2025-03-26 08:57:33

      docker学习笔记02

      docker学习笔记02

      2025-03-26 08:57:33
      docker , exec , 容器 , 运行
      查看更多
      推荐标签

      作者介绍

      天翼云小翼
      天翼云用户

      文章

      33561

      阅读量

      5243687

      查看更多

      最新文章

      Docker大学生看了都会系列(十、Docker网络)

      2025-05-14 09:51:21

      Docker大学生看了都会系列(三、常用帮助、镜像、容器命令)

      2025-05-14 09:51:21

      如何在 Ubuntu 上安装 Docker:详细步骤指南

      2025-04-14 09:26:51

      tomcat指定jdk路径

      2025-04-09 09:11:38

      docker学习笔记02

      2025-03-26 08:57:33

      Linux下Docker容器占用过多情况,导致linux:无法为立即文档创建临时文件: 设备上没有空间

      2025-03-04 09:11:34

      查看更多

      热门文章

      docker学习-构建镜像

      2023-04-19 09:22:48

      k8s安装gitlab,yaml如何写?

      2023-06-07 07:34:28

      CentOS7 yum 安装git

      2023-04-13 10:26:25

      CentOS 7 上安装 Docker与其它后续操作

      2023-04-27 06:31:23

      nginx&tomcat&ansible

      2023-05-04 08:59:25

      用golang官方Docker镜像运行项目

      2023-05-10 05:59:23

      查看更多

      热门标签

      linux java python javascript 数组 前端 docker Linux vue 函数 shell git 节点 容器 示例
      查看更多

      相关产品

      弹性云主机

      随时自助获取、弹性伸缩的云服务器资源

      天翼云电脑(公众版)

      便捷、安全、高效的云电脑服务

      对象存储

      高品质、低成本的云上存储服务

      云硬盘

      为云上计算资源提供持久性块存储

      查看更多

      随机文章

      CentOS7 yum 安装git

      docker for linux(8)

      apache flink docker-compose 运行试用

      【Docker】Docker Container(容器)

      linux培训作业(描述计算机的组成及其功能)

      CentOS 7 下 ifconfig command not found 解决办法

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 服务器安全卫士
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号