5、Docker架构和底层技术

5.1 Docker Platform

  • Docker提供了一个开发,打包,运行APP的平台
  • 把APP和底层infrastructure隔离开来

5.2 Docker Engine

  • 后台进程(dockerd)
  • REST API Server
  • CLI接口(docker)

[[email protected] ~]# docker version

Client:
 Version:      18.03.1-ce
 API version:  1.37
 Go version:   go1.9.5
 Git commit:   9ee9f40
 Built:        Thu Apr 26 07:20:16 2018
 OS/Arch:      linux/amd64
 Experimental: false
 Orchestrator: swarm

Server:
 Engine:
  Version:      18.03.1-ce
  API version:  1.37 (minimum version 1.12)
  Go version:   go1.9.5
  Git commit:   9ee9f40
  Built:        Thu Apr 26 07:23:58 2018
  OS/Arch:      linux/amd64
  Experimental: false
[[email protected] ~]# 
[[email protected] ~]# ps -ef|grep docker|grep -v grep
root     17126     1  0 5月30 ?       00:01:52 /usr/bin/dockerd
root     17130 17126  0 5月30 ?       00:02:14 docker-containerd --config /var/run/docker/containerd/containerd.toml
[[email protected] ~]# 

5.3 Docker Architecture

5.4 Docker底层技术支持

  • Namespaces:做隔离pid,net,ipc,mnt,uts
  • Control groups:做资源限制
  • Union file systems:Container和image的分层

原文地址:https://www.cnblogs.com/jie-fang/p/10279665.html

时间: 2024-08-27 17:22:12

5、Docker架构和底层技术的相关文章

实现容器的底层技术 - 每天5分钟玩转 Docker 容器技术(30)

为了更好地理解容器的特性,本节我们将讨论容器的底层实现技术.cgroup 和 namespace 是最重要的两种技术.cgroup 实现资源限额, namespace 实现资源隔离. cgroup cgroup 全称 Control Group.Linux 操作系统通过 cgroup 可以设置进程使用 CPU.内存 和 IO 资源的限额.相信你已经猜到了:前面我们看到的--cpu-shares.-m.--device-write-bps 实际上就是在配置 cgroup. cgroup 到底长什么

docker底层技术概览

docker解决了云计算环境难于分发并且管理复杂,而用KVM.Xen等虚拟化又浪费系统资源的问题.Docker最初是基于lxc构建了容器引擎,为了提供跨平台支持,后又专门开发了libcontainer来抽象容器引擎.但无论是libcontainer还是lxc,其底层所依赖的内核特性都是相同的.我们来看看docker都使用了技术来实现容器引擎的. 命名空间 Docker使用了pid.network.ipc.美mnt.uts等命名空间来隔离网络.文件系统.进程等资源.注意,由于Linux并不是nam

Docker(linux container) 所依赖的底层技术

1 Namespace 用来做PID的隔离,有了namespace,在docker container里头看来,就是一个完整的linux的世界.在host看来,container里的进程,就是一个普通的host进程,namespace提供这种pid的映射和隔离效果,host承载着container,就好比造物者创造一个个世外桃源. 2 Cgroups 在我的另外一篇博文里,有详细介绍cgroup如何做到内存,cpu和io速率的隔离,移步cgroups 3 Chroot 如何在container里

腾讯TEG架构平台部总监冯亮:游戏内部云底层技术揭秘

摘要:在腾讯内部游戏云一直是最大一块,所以最棘手的问题.最新的技术.最高效的运营体系都会最先出现在游戏云上.在今年第二届游戏运营技术论坛上,腾讯TEG架构平台部总监冯亮为大家揭秘了游戏内部云底层技术. 在腾讯内部游戏云一直是最大的一块,所以最棘手的问题.最新的技术.最高效的运营体系都会最先出现在游戏云上.在今年第二届的游戏运营技术论坛上,腾讯TEG架构平台部系统研发中心总监冯亮为大家揭秘了游戏内部云底层技术.冯亮主要负责腾讯内部使用的Linux发行版/内核和虚拟化平台,致力于打造腾讯内部高效.稳

Docker底层技术Namespace & Cgroup应用

Docker底层技术: docker底层的2个核心技术分别是Namespaces和Control groupsNamespace:是容器虚拟化的核心技术,用来隔离各个容器,可解决容器之间的冲突. 主要通过以下六项隔离技术来实现:有两个伪文件系统:/proc和/sys/ UTS:允许每个container拥有独立的hostname(主机名)和domainname(域名),使其在网络上可以被视作一个独立的节点而非Host上的一个进程. IPC:contaner中进程交互还是采用linux常见的进程间

Docker 架构详解 - 每天5分钟玩转容器技术(7)

Docker 的核心组件包括: Docker 客户端 - Client Docker 服务器 - Docker daemon Docker 镜像 - Image Registry Docker 容器 - Container Docker 架构如下图所示: Docker 采用的是 Client/Server 架构.客户端向服务器发送请求,服务器负责构建.运行和分发容器.客户端和服务器可以运行在同一个 Host 上,客户端也可以通过 socket 或 REST API 与远程的服务器通信. Dock

Docker架构

Docker架构 为了更好的使用Docker和理解Docker中一些不常见的行为,我们最好了解在Docker表层之下的一些东西. 在下面的图片中,我们可以看到Docker安装的主要元件 中间部分是Docker daemon,负责创建,运行和监控容器,同时构建和存储镜像,Docker daemon通过docker daemon命令来运行,通常由宿主机管理. Docker client位于右手边,用于和Docker daemon通过HTTP通信,默认情况下这主要是通过Unix domain sock

Docker源码分析(一):Docker架构

[编者按]在<深入浅出Docker>系列文章的基础上,InfoQ推出了<Docker源码分析>系列文章.<深入浅出Docker>系列文章更多的是从使用角度出发,帮助读者了解Docker的来龙去脉,而<Docker源码分析>系列文章通过分析解读Docker源码,来让读者了解Docker的内部实现,以更好的使用Docker.总之,我们的目标是促进Docker在国内的发展以及传播.另外,欢迎加入InfoQ Docker技术交流群,QQ群号:272489193. 1

Docker 架构原理及简单使用

提示:文中有些内容为大神的博客内容,就不统一标注那里引用,只是再最下面标注参考连接谢谢 一.简介 1.了解docker的前生LXC LXC为Linux Container的简写.可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性.相当于C++中的NameSpace.容器有效地将由单个操作系统管理的资源划分到孤立的组中,以更好地在孤立的组之间平衡有冲突的资源使用需求. 与传统虚拟化技术相比,它的优势在于: (1)与宿主机使用同一个内核,性能损耗小: (2