Docker 网络之进阶篇】的更多相关文章

笔者在<Docker 基础 : 网络配置>一文中简单介绍了容器网络的基本用法,当时网络的基本使用方式还处于 --link 阶段.时过境迁,随着 docker 的快速发展,其网络架构也在不断的演进.本文主要介绍 docker 的 CNM 网络模型以及新引入的 network 子命令. Docker 网络架构 Docker 在 1.9 版本中引入了一整套的 docker network 子命令和跨主机网络支持.这允许用户可以根据他们应用的拓扑架构创建虚拟网络并将容器接入其所对应的网络.其实,早在…
Docker启动会默认创建docker0虚拟网桥,是Linux的一个bridge,可以理解成一个软件交换机.它会在挂载到它的网口之间进行转发. 之后所有容器都是在172.17.0.x的网段上,并且可以相互通讯,包括和宿主主机通讯. 当创建一个Docker容器的时候,同时会创建一对veth pair(虚拟设备接口) (https://www.cnblogs.com/bakari/p/10613710.html) 接口(当数据包发送到一个接口时,另外一个接口也可以收到相同的数据包).这对接口一端在容…
笔者在前文<Docker Compose 简介>和<Dcoker Compose 原理>两篇文章中分别介绍了 docker compose 的基本概念以及实现原理.本文我们将继续探索 docker compose,并通过 demo 介绍一些主要的用法. 说明:本文的演示环境为 ubuntu 16.04. 应用多个 compose 配置文件 docker-compose 命令默认使用的配置文件是当前目录中的 docker-compose.yml 文件,当然我们可以通过 -f 选项指定…
1.Docker集群网络配置之Weave Weave是Github上一个比较热门的Docker容器网络方案,具有非常良好的易用性且功能强大.仓库地址:https://github.com/weaveworks/weave.git. Weave由两大主要组件组成: Weave:用户态shell脚本,用于安装Weave,将container连接到Weave虚拟网络,并为他们分配IP. Weaver:运行于container内,每个Weave网络内的主机都要运行,它是一个Go语言实现的虚拟网络路由器,…
多容器复杂应用的部署 基于 flask容器,链接外部另一个redis 容器 docker pull redis sudo docker run -d --name redis redis # redis 没必要映射端口出来 创建flask镜像 docker build -t kvin/flask-redis . 镜像名称 Dockerfile的路径 . 是当前目录 运行容器并连接到数据库 docker run -d --name flask-redis --link redis -e REDIS…
笔者在<Docker 基础 : 镜像>一文中介绍了 docker 镜像的基本用法,本文我们来介绍 docker 镜像背后的技术原理. 什么是 docker 镜像 docker 镜像是一个只读的 docker 容器模板,含有启动 docker 容器所需的文件系统结构及其内容,因此是启动一个 docker 容器的基础.docker 镜像的文件内容以及一些运行 docker 容器的配置文件组成了 docker 容器的静态文件系统运行环境:rootfs.可以这么理解,docker 镜像是 docker…
笔者在<Docker 基础 : 数据管理>一文中介绍了 docker 数据卷(volume) 的基本用法.随着使用的深入,笔者对 docker 数据卷的理解与认识也在不断的增强.本文将在前文的基础上介绍 docker 数据卷的原理及一些高级用法.如果您想先了解 docker 数据卷的基本概念与用法,请先查看我的上篇文章. 为什么需要数据卷? 这得从 docker 容器的文件系统说起.出于效率等一系列原因,docker 容器的文件系统在宿主机上存在的方式很复杂,这会带来下面几个问题: 不能在宿主…
笔者在前文<Docker 网络之进阶篇>中介绍了 CNM(Container Network Model),并演示了 bridge 驱动下的 CNM 使用方式.为了深入理解 CNM 及最常用的 bridge 驱动,本文将探索 bridge 驱动的实现机制.说明:本文的演示环境为 ubuntu 16.04. dokcer0 网桥 在 Ubuntn 上安装 docker 后,宿主机上默认被创建了一个名为 docker0 的网卡,其 IP 为 172.17.0.1/16: 有了这个网卡,宿主机还会在…
[编者的话] 本文是<Docker网络及服务发现>一书的一个章节,介绍了搭建Docker单主机网络的基础内容.关于Docker网络的更多内容,包括多主机的网络,请参考该书的其他章节. @Container容器技术大会将于6月4日在上海光大会展中心国际大酒店举办,来自Rancher.携程.PPTV.蚂蚁金服.京东.浙江移动.海尔电器.唯品会.eBay.道富银行.麻袋理财.土豆网.阿里百川.腾讯游戏.数人云.点融网.华为.轻元科技.中兴通讯等公司的技术负责人将带来实践经验分享,5月7日之前购票只需…
我们在工作中应用了docker容器化技术,服务的部署.维护和扩展都方便了很多.然而,近期在私有化部署过程中,由于不同服务器环境的复杂多变,常常遇到网络方面的问题,现象为容器服务运行正常,但宿主机.容器之间网络不通. 本篇博客旨在总结: Linux虚拟网络及docker网络的基础知识 遇到网络问题时排查问题思路 常用指令和工具的使用 以上三部分作为之后的参考,本篇文章也将会在日后实践过程中逐渐补充.本篇为第一篇,主要介绍基础知识 Linux网络虚拟化基础 Network Namespace 网络命…