Docker网络的学习

简介: 这章主要是对docker网络进行一个基本的学习,这也是一个很重要的知识点

Docker网络

理解Docker

清空所有环境

docker是如何处理容器网络访问的?

#查看容器的内部网络地址  ip addr

docker exec -it  tomcat01 ip addr

原理

1、我们每启动一个docker容器,docker就会给docker容器分配一个ip。我们只要安装了docker,就会有一个网卡docker0,桥接模式,使用的技术是evth-pair技术

#容器带来的网卡,都是一对一对的
#evth-pair 就是一对的虚拟设备接口,他们都是成对出现的,一端连接协议,一端彼此相连
#正因为有这个特性,evth-pair充当一个桥梁,连接各种虚拟网络设备
#容器之间也是可以互相ping通的

--link

我们编写了一个微服务,database URL = ip,项目不重启,数据库ip换掉了,我们希望可以处理这个问题,可以使用名字来访问这个容器。

#docker exec -it tomcat02 ping tomcat01          ping不通

#通过--link 可以解决网络联通问题
#docker run -d -P --name tomcat03 --link tomcat02  tomcat

#docker exec -it tomcat03 ping tomcat02          可以ping通

自定义网络

#查看所有的docker网络
docker network ls

网络模式

bridge:桥接docker

测试

#我们直接启动命令 --net bridge,而这个就是我们的docker0
docker run -d -P --name tomcat01 tomcat
docker run -d —P --name tomcat01 --net bridge tomcat

#docker特点,默认域名不能访问,--link可以打通连接

#我们可以自定义一个网络!
#--driver bridge
#--subnet 192.168.0.0/16
#--gateway 192.168.0.1
docker network create --driver  bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet

#oot@ji-VirtualBox:~# docker network create --driver  bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet

39613d7e1aa93c20b52759d0f1cfe3277ca1de10cda41825430f78362d433eaa

root@ji-VirtualBox:~# docker network inspect mynet

[
 {
        "Name": "mynet",

        "Id": "39613d7e1aa93c20b52759d0f1cfe3277ca1de10cda41825430f78362d433eaa",

        "Created": "2023-08-30T16:48:49.435201961+08:00",

        "Scope": "local",

        "Driver": "bridge",

        "EnableIPv6": false,

        "IPAM": {

            "Driver": "default",

            "Options": {},

            "Config": [

                {

                    "Subnet": "192.168.0.0/16",

                    "Gateway": "192.168.0.1"

                }

            ]

        },

#在自定义网络下创建容器
docker run -d -P --name tomcat-net-01 --net mynet tomcat     #在tomcat镜像和自定义的网络下创建tomcat-net-01容器

网络连通

image.png

image.png

#测试 打通 可以将一个容器的网络直接放入mynet我网络之下
docker network connect mynet tomcat01

#一个容器两个ip地址
相关文章
|
22天前
|
编解码 安全 Linux
网络空间安全之一个WH的超前沿全栈技术深入学习之路(10-2):保姆级别教会你如何搭建白帽黑客渗透测试系统环境Kali——Liinux-Debian:就怕你学成黑客啦!)作者——LJS
保姆级别教会你如何搭建白帽黑客渗透测试系统环境Kali以及常见的报错及对应解决方案、常用Kali功能简便化以及详解如何具体实现
|
22天前
|
安全 网络协议 算法
网络空间安全之一个WH的超前沿全栈技术深入学习之路(8-1):主动信息收集之ping、Nmap 就怕你学成黑客啦!
网络空间安全之一个WH的超前沿全栈技术深入学习之路(8-1):主动信息收集之ping、Nmap 就怕你学成黑客啦!
|
26天前
|
Docker 容器
docker swarm启动服务并连接到网络
【10月更文挑战第16天】
25 5
|
26天前
|
调度 Docker 容器
docker swarm创建覆盖网络
【10月更文挑战第16天】
16 5
|
22天前
|
网络协议 安全 NoSQL
网络空间安全之一个WH的超前沿全栈技术深入学习之路(8-2):scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练、就怕你学成黑客啦!
scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练等具体操作详解步骤;精典图示举例说明、注意点及常见报错问题所对应的解决方法IKUN和I原们你这要是学不会我直接退出江湖;好吧!!!
网络空间安全之一个WH的超前沿全栈技术深入学习之路(8-2):scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练、就怕你学成黑客啦!
|
22天前
|
网络协议 安全 算法
网络空间安全之一个WH的超前沿全栈技术深入学习之路(9):WireShark 简介和抓包原理及实战过程一条龙全线分析——就怕你学成黑客啦!
实战:WireShark 抓包及快速定位数据包技巧、使用 WireShark 对常用协议抓包并分析原理 、WireShark 抓包解决服务器被黑上不了网等具体操作详解步骤;精典图示举例说明、注意点及常见报错问题所对应的解决方法IKUN和I原们你这要是学不会我直接退出江湖;好吧!!!
网络空间安全之一个WH的超前沿全栈技术深入学习之路(9):WireShark 简介和抓包原理及实战过程一条龙全线分析——就怕你学成黑客啦!
|
12天前
|
Docker 容器
【赵渝强老师】Docker的None网络模式
Docker容器在网络方面实现了逻辑隔离,提供了四种网络模式:bridge、container、host和none。其中,none模式下容器具有独立的网络命名空间,但不包含任何网络配置,仅能通过Local Loopback网卡(localhost或127.0.0.1)进行通信。适用于不希望容器接收任何网络流量或运行无需网络连接的特殊服务。
|
12天前
|
Docker 容器
【赵渝强老师】Docker的Host网络模式
Docker容器在网络环境中是隔离的,可通过配置不同网络模式(如bridge、container、host和none)实现容器间或与宿主机的网络通信。其中,host模式使容器与宿主机共享同一网络命名空间,提高性能但牺牲了网络隔离性。
|
12天前
|
Kubernetes Docker 容器
【赵渝强老师】Docker的Container网络模式
Docker容器在网络环境中彼此隔离,但可通过配置不同网络模式实现容器间通信。其中,container模式使容器共享同一网络命名空间,通过localhost或127.0.0.1互相访问,提高传输效率。本文介绍了container模式的特点及具体示例。
|
12天前
|
Linux Docker 容器
【赵渝强老师】Docker的Bridge网络模式
本文介绍了Docker容器的网络隔离机制及其四种网络模式:bridge、container、host和none。重点讲解了默认的bridge模式,通过示例演示了如何创建自定义bridge网络并配置容器的网络信息。文中还附有相关图片和视频讲解,帮助读者更好地理解Docker网络的配置和使用方法。
下一篇
无影云桌面