Docker核心技术之网络管理(一)

简介: Docker核心技术之网络管理(一)

一、Docker 网络管理简介



为什么需要Docker网络管理


容器的网络默认与宿主机、与其他容器都是相互隔离。


容器中可以运行一些网络应用(如nginx、web应用、数据库等),如果要让外部也可以访问这些容器内运行的网络应用,那么就需要配置网络来实现。


有可能有的需求下,容器不想让它的网络与宿主机、与其他容器隔离。


有可能有的需求下,容器根本不需要网络。


有可能有的需求下,容器需要更高的定制化网络(如定制特殊的集群网络、定制容器间的局域网)。


有可能有的需求下, 容器数量特别多,体量很大的一系列容器的网络管理如何 ……


因此容器的网络管理是非常重要的


Docker中有哪些网络驱动模式


bridge network 模式(网桥):默认的网络模式。类似虚拟机的nat模式


host network 模式(主机):容器与宿主机之间的网络无隔离,即容器直接使用宿主机网络


None network 模式:容器禁用所有网络。


Overlay network 模式(覆盖网络): 利用VXLAN实现的bridge模式


Macvlan network 模式:容器具备Mac地址,使其显示为网络上的物理设备


Docker网络管理命令



查看网络 – docker network ls


作用:     查看已经建立的网络对象


命令格式:     docker network ls [OPTIONS]


命令参数(OPTIONS):     -f, --filter filter           过滤条件(如 'driver=bridge’)        


                                         --format string       格式化打印结果        


                                         --no-trunc            不缩略显示    


                                         -q, --quiet                   只显示网络对象的ID


注意:     默认情况下,docker安装完成后,会自动创建bridge、host、none三种网络驱动  


命令演示:


20190424230529321.png


创建网络 – docker network create


作用:     创建新的网络对象


命令格式:     docker network create [OPTIONS] NETWORK


命令参数(OPTIONS):     -d, --driver string                指定网络的驱动(默认 "bridge")        


                                         --subnet strings               指定子网网段(如192.168.0.0/16、172.88.0.0/24)        


                                         --ip-range strings             执行容器的IP范围,格式同subnet参数        


                                         --gateway strings              子网的IPv4 or IPv6网关,如(192.168.0.1)


注意:     host和none模式网络只能存在一个     docker自带的overlay 网络创建依赖于docker swarm(集群负载均衡)服务     192.168.0.0/16 等于 192.168.0.0~192.168.255.255    192.168.8.0/24     172.88.0.0/24 等于 172.88.0.0~172.88.0.255


命令演示:


20190424231039347.png


网络删除 – docker network rm


作用:     删除一个或多个网络


命令格式:     docker network rm NETWORK [NETWORK...]


命令参数(OPTIONS):     无


查看网络详细信息 – docker network inspect


作用:     查看一个或多个网络的详细信息


命令格式:     docker network inspect [OPTIONS] NETWORK [NETWORK...]      


                      或者 docker inspect [OPTIONS] NETWORK [NETWORK...]


命令参数(OPTIONS):     -f, --format string       根据format输出结果


使用网络 – docker run --network


作用:     为启动的容器指定网络模式


命令格式:     docker run/create --network NETWORK


命令参数(OPTIONS):     无


注意:     默认情况下,docker创建或启动容器时,会默认使用名为bridge的网络


网络连接与断开 – docker network connect/disconnect


作用:     将指定容器与指定网络进行连接或者断开连接


命令格式:     docker network connect [OPTIONS] NETWORK CONTAINER


                      docker network disconnect [OPTIONS] NETWORK CONTAINER


命令参数(OPTIONS):     -f, --force           强制断开连接(用于disconnect)


二、Docker网络模式简介



bridge 网络模式(一)


特点: 宿主机上需要单独的bridge网卡,如默认docker默认创建的docker0。


容器之间、容器与主机之间的网络通信,是借助为每一个容器生成的一对veth pair虚拟网络设备对,进行通信的。一个在容器上,另一个在宿主机上。


每创建一个基于bridge网络的容器,都会自动在宿主机上创建一个veth**虚拟网络设备。


外部无法直接访问容器。需要建立端口映射才能访问。


容器借由veth虚拟设备通过如docker0这种bridge网络设备进行通信。


每一容器具有单独的IP


20190424232014727.png

目录
相关文章
|
10天前
|
存储 安全 网络安全
云计算与网络安全:技术融合的双刃剑
【10月更文挑战第40天】本文将深入探讨云计算与网络安全之间的关系,揭示它们如何相互依赖又互相挑战。我们将从云计算的基本概念出发,逐步引入网络安全的重要性,并分析云服务在提供便利的同时可能带来的安全隐患。文章还将讨论信息安全的关键领域,如加密技术和身份验证机制,以及如何在云计算环境中加强这些安全措施。通过本文,读者将获得对云计算和网络安全复杂关系的深刻理解,并认识到在享受技术便利的同时,维护网络安全的重要性。
|
2天前
|
持续交付 开发者 Docker
探索容器化技术Docker及其在现代软件开发中的应用
探索容器化技术Docker及其在现代软件开发中的应用
|
8天前
|
监控 安全 网络安全
云计算与网络安全:探索云服务中的信息安全技术
【10月更文挑战第43天】本文将深入探讨云计算与网络安全的交汇点,重点分析云服务中的信息安全技术和策略。我们将从云计算的基础架构出发,逐步剖析网络安全的重要性,并介绍如何通过实施有效的安全措施来保护数据和应用程序。文章还将提供实用的代码示例,帮助读者更好地理解和应用这些安全技术。
24 4
|
8天前
|
运维 Kubernetes Cloud Native
云原生技术入门:Kubernetes和Docker的协同工作
【10月更文挑战第43天】在云计算时代,云原生技术成为推动现代软件部署和运行的关键力量。本篇文章将带你了解云原生的基本概念,重点探讨Kubernetes和Docker如何协同工作以支持容器化应用的生命周期管理。通过实际代码示例,我们将展示如何在Kubernetes集群中部署和管理Docker容器,从而为初学者提供一条清晰的学习路径。
|
10天前
|
存储 安全 网络安全
云计算与网络安全:云服务、网络安全、信息安全等技术领域
【10月更文挑战第40天】随着互联网技术的不断发展,云计算已经成为了现代社会中不可或缺的一部分。然而,云计算的普及也带来了一系列的安全问题。本文将探讨云计算与网络安全之间的关系,包括云服务、网络安全、信息安全等领域。我们将通过代码示例来展示如何保护云计算环境中的敏感信息和数据。最后,我们将总结云计算与网络安全之间的紧密联系,并展望未来的发展趋势。
|
12天前
|
云安全 安全 网络安全
云计算与网络安全:技术挑战与解决策略
【10月更文挑战第39天】随着云计算技术的飞速发展,网络安全问题也日益凸显。本文将探讨云计算环境下的网络安全挑战,并提出相应的解决策略。通过分析云服务模型、网络安全威胁以及信息安全技术的应用,我们将揭示如何构建一个安全的云计算环境。
|
12天前
|
存储 网络协议 安全
30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场
本文精选了 30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场。
38 2
|
13天前
|
云安全 安全 网络安全
云计算与网络安全:技术融合的未来之路
【10月更文挑战第38天】 在数字化浪潮中,云计算和网络安全成为支撑现代企业和个人数据安全的两大基石。本文将深入探讨云计算服务如何与网络安全技术相结合,保障信息安全,并分析面临的挑战及未来发展趋势。我们将通过实际案例,揭示云安全的最佳实践,为读者提供一条清晰的技术融合路径。
|
13天前
|
安全 网络安全 数据库
云计算与网络安全:技术融合的未来之路
【10月更文挑战第37天】本文将探讨云计算与网络安全的交汇点,揭示它们如何共同塑造信息安全的未来。我们将深入了解云服务的核心组件、网络安全的关键策略以及两者如何相互增强。通过分析当前的挑战和未来的趋势,本文旨在为读者提供一条清晰的路径,以理解并应对这一不断发展的技术领域。
|
12天前
|
缓存 监控 开发者
掌握Docker容器化技术:提升开发效率的利器
在现代软件开发中,Docker容器化技术成为提升开发效率和应用部署灵活性的重要工具。本文介绍Docker的基本概念,并分享Dockerfile最佳实践、容器网络配置、环境变量和秘密管理、容器监控与日志管理、Docker Compose以及CI/CD集成等技巧,帮助开发者更高效地利用Docker。
下一篇
无影云桌面