docker默认使用bridge(单主机互联)和overlay(可跨主机互联)两种网络驱动来进行容器的网络管理。如需要,还可以自定义网络驱动插件进行docker容器的网络管理。

1.docker默认网络管理

docker network ls

NETWORK ID          NAME                DRIVER              SCOPE
506aad38ec3f bridge bridge local
8899107f108e host host local
66b732b380f4 none null local

默认有三种网络: bridge, host , none.  其中bridge 为默认网络

通过命令可以查看某个网络详情:

docker network inspect bridge

[
{
"Name": "bridge",
"Id": "506aad38ec3fdc288a6511fa1c45a3e4d2766870387686bf9dc4cc931cf5a4c0",
"Created": "2020-03-18T21:38:44.88031526+08:00",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "172.17.0.0/16",
"Gateway": "172.17.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {
"39454581b2715b3c1d6b008a7e5d285639680dad733ff5f51d5d36d92bfcfaab": {
"Name": "networktest",
"EndpointID": "b414391ba09c65aa25fcf163c5052935fe20c5cff33a21d3cb0f5eeb12760160",
"MacAddress": "02:42:ac:11:00:05",
"IPv4Address": "172.17.0.5/16",
"IPv6Address": ""
},
"ab20a6613ae63779276f615e7137631934ca478242fdb4dca1bf5904ba6915af": {
"Name": "mongo-server2",
"EndpointID": "682a9bf282799993e3d9ba42e405a96032e1a240c4514b8e0346d7c2e981dec3",
"MacAddress": "02:42:ac:11:00:02",
"IPv4Address": "172.17.0.2/16",
"IPv6Address": ""
},
"ccd33e6df12a4510e9137296c3ce7ed5f179420847a2b0bcde88a6777689298c": {
"Name": "docker-web2",
"EndpointID": "7b0092927482eeaf0fe2b4ca3ce9818931157df88fad28eef67db9d77b918858",
"MacAddress": "02:42:ac:11:00:04",
"IPv4Address": "172.17.0.4/16",
"IPv6Address": ""
},
"df8652b3315ce415634d8001d39a8085c11df0f23b81df6ca8bab7dd5c8a6002": {
"Name": "jzl0",
"EndpointID": "bc0da902076813ae0c49fd400b3a89372fb37619b9a7eb949b23ada29c9ac676",
"MacAddress": "02:42:ac:11:00:03",
"IPv4Address": "172.17.0.3/16",
"IPv6Address": ""
}
},
"Options": {
"com.docker.network.bridge.default_bridge": "true",
"com.docker.network.bridge.enable_icc": "true",
"com.docker.network.bridge.enable_ip_masquerade": "true",
"com.docker.network.bridge.host_binding_ipv4": "0.0.0.0",
"com.docker.network.bridge.name": "docker0",
"com.docker.network.driver.mtu": "1500"
},
"Labels": {}
}
]

注意点:这里的bridge,host,none都是在非集群环境下,而在docker swarm集群环境中,还会有docker_gwbridge 和 ingress两种默认网络

2. 自定义bridge网络

  创建网络

docker network create --driver bridge nw

说明:
--driver (简写 -d) 指定网络驱动类型
nw. 创建的网路名称 --driver 可以省略 默认创建该类型的网络 创建完成,查看
docker network ls

3. 使用自定义网络启动容器

docker run -itd --network=isolated_nw --name=nwtest busybody

可以通过命令查看容器网络详情
docker inspect nwtest

  

4. 为容器添加其他网络管理方式

docker network connect  isolated_nw busybody

指定连接的网络isolated_nw

5. 断开网络连接

docker network disconnect isolated_nw busybody

注意:一个容器可以连接多个网络,当断开全部网络连接,虽然容器在运行,但是内部的应用无法被外界访问到

6. 移除网络

docker  network  rm isolated_nw

容器之间的通信必须是在同一个网络中才可以,否则无法进行通信。

可以通过在容器中使用ping -w 4 其他容器IP的方式进行验证

docker之网络与数据管理的更多相关文章

  1. docker的网络-Container network interface(CNI)与Container network model(CNM)

    Overview 目前围绕着docker的网络,目前有两种比较主流的声音,docker主导的Container network model(CNM)和社区主导的Container network in ...

  2. Docker 基础 : 网络配置

    大量的互联网应用服务包含多个服务组件,这往往需要多个容器之间通过网络通信进行相互配合.Docker 目前提供了映射容器端口到宿主主机和容器互联机制来为容器提供网络服务.接下来我们将讲述 Docker ...

  3. Docker(四):Docker基本网络配置

    1.Libnetwork Libnetwork提出了新的容器网络模型简称为CNM,定义了标准的API用于为容器配置网络. CNM三个重要概念: 沙盒:一个隔离的网络运行环境,保存了容器网络栈的配置,包 ...

  4. docker(4)docker的网络,自定义网桥

    Docker 的网络 运行 ifconfig 找到 docker0 : 虚拟网卡默认网卡名称为docker0 查看docker 的网桥: 我这里默认们没有进行安装 网桥管理设备:进行安装一下: yum ...

  5. 5、Docker容器网络

    使用Linux进行IP层网络管理的指     http://linux-ip.net/html/ # yum install iproute http://linux-ip.net/html/tool ...

  6. docker的网络访问

    Docker的网络访问: #systemctl  start docker #ifconfig [root@zizhen02 ~]# ifconfig docker0: flags=4099<U ...

  7. docker单机网络类型

    docker单机网络类型概述 Docker 安装时会自动在 host 上创建三种网络  分别为 bridge    host   none .   可用 docker network ls 命令查看 ...

  8. Docker的网络类型和固定IP设置

    Docker的网络机制 Docker的网络有三种类型(driver): bridge, host 和 null. birdge: 就如同桥接的switch/hub, 使用bridge网络的contai ...

  9. docker之 网络模式和跨主机通信

    Docker的四种网络模式Bridge模式 当Docker进程启动时,会在主机上创建一个名为docker0... Docker的四种网络模式 Bridge模式 当Docker进程启动时,会在主机上创建 ...

  10. docker的网络模式

    记性不好,回顾一下.按照惯例,直接看官文. Docker's networking subsystem is pluggable, using drivers. Several drivers exi ...

随机推荐

  1. Asp.net core 学习笔记 ( 小东西 )

    简单的为 url 添加 query var parametersToAdd = new System.Collections.Generic.Dictionary<string, string& ...

  2. LeetCode 218. 天际线问题 (扫描线+优先队列)

    扫描线+优先队列 https://leetcode-cn.com/problems/the-skyline-problem/solution/tian-ji-xian-wen-ti-by-leetco ...

  3. PHP中几种常见的开发模式

     设计模式 单例模式 $_instance必须声明为静态的私有变量 构造函数和析构函数必须声明为私有,防止外部程序new 类从而失去单例模式的意义 getInstance()方法必须设置为公有的,必须 ...

  4. 揭秘!尤雨溪成立的VoidZero如何改变前端世界

    前言 Vue和Vite之父尤雨溪宣布成立公司 VoidZero,目前已经融资3200万.这篇文章欧阳将带你了解VoidZero是如何改变javascript的世界! 关注公众号:[前端欧阳],给自己一 ...

  5. threejs - 渲染第一个3D场景 - 旋转的正方体

    1. 安装 threejs & 使用 2. 创建三要素  场景 scene 相机 camera 渲染器 render 3. 场景 new THREE.Scene() 相机分为 2 种  1. ...

  6. C# Webapi Filter 过滤器 - 生命周期钩子函数 - Action Filter 基础

    ACTION Filter IAsyncACtionFilter 接口 : 1.注入ActionFilter // 注册过滤器 builder.Services.Configure<MvcOpt ...

  7. 创建一个简单的基于MyBatis的项目

  8. JOI 2018 Final

    A - ストーブ (Stove) 有 \(n\) 个客人将要来访,第 \(i\) 个客人的来访时间为 \([a_i, a_i + 1]\),保证 \(\forall i \in [1, n), a_i ...

  9. 云原生周刊:2024 年 K8s 基准报告 | 2024.4.8

    开源项目推荐 Argo CD Image Updater Argo CD Image Updater 是一个自动更新 Argo CD 管理的 Kubernetes 工作负载容器镜像的工具.简而言之,它 ...

  10. KubeSphere 边缘节点 IP 冲突的分析和解决思路分享

    在上一篇监控问题排查的文章中,笔者分析了 KubeSphere 3.1.0 集成 KubeEdge 中的边缘监控原理和问题排查思路,在介绍 EdgeWatcher 组件时提到了"边缘节点的内 ...