Docker网络详解及pipework源码解读与实践
Docker作为目前最火的轻量级容器技术,有很多令人称道的功能,如Docker的镜像管理。然而,Docker同样有着很多不完善的地方,网络方面就是Docker比较薄弱的部分。因此,我们有必要深入了解Docker的网络知识,以满足更高的网络需求。本文首先介绍了Docker自身的4种网络工作方式,然后通过3个样例 —— 将Docker容器配置到本地网络环境中、单主机Docker容器的VLAN划分、多主机Docker容器的VLAN划分,演示了如何使用pipework帮助我们进行复杂的网络设置,以及pipework是如何工作的。
Docker源码分析(六):Docker Daemon网络
**摘要:**Docker的容器特性和镜像特性已然为Docker实践者带来了诸多效益,然而Docker的网络特性却不能让用户满意。本文从Docker的网络模式入手,分析了Docker Daemon创建网络环境的详细流程,其中着重于分析Docker桥接模式的创建,为之后Docker Container创建网络环境做铺垫。
玩转Docker镜像
摘要: Docker是基于Go语言开发,通过分层镜像标准化和内核虚拟化技术,使得应用开发者和运维工程师可以以统一的方式跨平台发布应用。镜像是Docker最核心的技术之一,也是应用发布的标准格式。
Docker源码分析(五):Docker Server的创建
Docker架构中,Docker Server是Docker Daemon的重要组成部分。Docker Server最主要的功能是:接受用户通过Docker Client发送的请求,并按照相应的路由规则实现路由分发。
Cloud Foundry’s 新容器技术: A Garden Overview
CloudFoundry(CF)中很早就使用了VMware研发的Warden容器来负责应用的资源分配隔离和实例调度。可惜的是,这一本来可以成为业界标准和并掀起一阵革命的容器PaaS技术却因为Pivotal的方针路线上的种种原因被后来居上Docker吊打至今。最近CFer有醒悟的迹象,在Warden上进行了大量改进和升级,本文就来一窥CF新容器技术的一些要点。
Docker源码分析(四):Docker Daemon之NewDaemon实现
Docker的生态系统日趋完善,开发者群体也在日趋庞大,这让业界对Docker持续抱有极其乐观的态度。然而,对于广大开发者而言,使用Docker这项技术已然不是门槛,享受Docker带来的技术福利已不是困难。如今,如何探寻Docker适应的场景,如何发展Docker周边的技术,以及如何弥合Docker新技术与传统物理机或VM技术的鸿沟,已经占据Docker研究者们的思考与实践。
Docker源码分析(三):Docker Daemon启动
【Docker源码分析(三):Docker Daemon启动】Docker作为业界备受推崇的轻量级虚拟化容器管理引擎,其强大的后台能力全凭Docker Daemon。本文从源码出发,介绍了Docker Daemon的启动流程,并深入分析启动流程中每一步骤的实现细节。Docker的运行真可谓,载体为daemon,调度管理由engine,任务执行靠job。
Docker源码分析(二):Docker Client创建与命令执行
如今,Docker作为业界领先的轻量级虚拟化容器管理引擎,给全球开发者提供了一种新颖、便捷的软件集成测试与部署之道。在团队开发软件时,Docker可以提供可复用的运行环境、灵活的资源配置、便捷的集成测试方法以及一键式的部署方式。可以说,Docker的优势在简化持续集成、运维部署方面体现得淋漓尽致,它完全让开发者从前者中解放出来,把精力真正地倾注在开发上。
Docker源码分析(一):Docker架构
Docker是Docker公司开源的一个基于轻量级虚拟化技术的容器引擎项目,整个项目基于Go语言开发,并遵从Apache 2.0协议。目前,Docker可以在容器内部快速自动化部署应用,并可以通过内核虚拟化技术(namespaces及cgroups等)来提供容器的资源隔离与安全保障等。由于Docker通过操作系统层的虚拟化实现隔离,所以Docker容器在运行时,不需要类似虚拟机(VM)额外的操作系统开销,提高资源利用率,并且提升诸如IO等方面的性能。