您的位置:首页 > 运维架构 > Docker

Docker介绍与简介

2016-07-28 21:16 633 查看

Docker的目标

提供简单轻量建模方式
指责的逻辑分离
快速高效的开发声明周期
鼓励使用面向服务的架构


Docker的使用场景

1. 使用Docker容器开发、测试、部署服务。
2. 创建隔离的运行环境。
3. 搭建测试环境。
4. 构建多用户的平台既服务(PaaS)基础设施。
5. 提供软件既服务(SaaS)应用程序
6. 高兴能、超大规模的宿主机部署


Docker的基本组成

Docker client 客户端
Docker Daemon 守护进程
Docker Image  镜像
Docker Container 容器
Docker Registry 仓库


Docker 客户端/守护进程

Docker是C/S架构的程序。客户端象服务端(守护进程)发出请求,守护进程处理完所有的请求工作并返回结果。
Docker的服务端访问既可以在本地,也可以远程访问。

Docker Client -> Docker Daemon -> Docker Container | Docker Container | Docker Registry -> Docker Client
Docker客户端发送请求到Docker服务端,服务端根据请求命令去完成工作,并返回结果


Docker Image 镜像

容器的基石
层叠的制度文件系统


Docker Container 容器

通过镜像启动
启动和执行阶段
写时复制


Docker Registry 仓库

仓库分为公有、私有
Docker Hub


Docker容器相关技术简介

Docker依赖的Linux内核特性

Namespaces 命名空间
系统资源的隔离
进程、网路、文件系统

1. PID (Process ID) 进程隔离
2. NET (Network) 管理网络接口
3. IPC (InterProcess Communication) 管理跨进程通信的访问
4. MNT (Mount) 管理挂载点
5. UTS (Unix Timesharing System) 隔离内核和版本标识

Control groups (cgroups) 控制组
用来分配资源
来源于Google
Linux kernel 2.6.24@2007

1. 资源限制
2. 优先级设定
3. 资源计量
4. 资源控制


Docker容器的能力

1. 文件系统隔离:每个容器都有孫的root文件系统
2. 进程隔离:每个容器都运行在自己的进程环境中
3. 网络隔离:容器间的虚拟网络接口和IP地址都是分开的
4. 资源隔离和分组:使用cgroups将CPU和内存之类的资源独立分配给每个Docker容器
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  docker 云计算 运维