docker第一篇 容器技术入门
Container
容器是一种基础工具,泛指任何可以容纳其它物品的工具。
Linux Namespaces (docker容器技术主要是通过6个隔离技术来实现)
| namespace | 系统调用参数 | 隔离内容 | 内核版本 |
| UTS | CLONE_NEWUTS | 主机名和域名 | 2.6.19 |
| IPC | CLONE_NEWIPC | 信息量、消息队列和共享内存 | 2.6.19 |
| PID | CLONE_NEWPID | 进程编号 | 2.6.24 |
| Network | CLONE_NEWNET |
网络设备、网络栈、端口等 |
2.6.29 |
| Mount | CLONE_NEWNS | 挂载点(文件系统) | 2.4.19 |
| User | COLNE_NEWUSER | 用户和用户组 | 3.8 |
Control Groups, CGroups控制组 (一般用来限制资源使用)把系统级的资源分成多个组,然后把每个组内的资源量指派或者分配到不同的用户空间进程上。
blkio:块设备IO
cpu: CPU
cpuacct: CPU资源使用报告
cpuset:多处理平台上的CPU集合
devices:设备访问
freezer:挂起或恢复任务
memory:内存用量报告
perf_event: 对从group中的任务进行统一性能测试
net_ds:cgroup中的任务创建的数据报文的类别标识符
LXC (LinuX Container) 最早实现容器技术的一个工具(容器属于linux内核中的一个技术)
当使用lxc-create 创建容器的时候,它不会激活模板去让你安装,而是连接到服务器下载匹配你穿件模板的一个镜像,从而把镜像拖到本地,并基于镜像来启动容器。把一个容器当一个用户控件使用。
docker是LXC的增强版 其实也是一个管理工具,只是docker是基于镜像来实现的,而LXC是基于模板来实现的。
编排工具
compose:单机编排
machine+ swarm +compose 集群编排
mesos+marathhon
kubernetes
docker第一篇 容器技术入门的更多相关文章
- Docker 第一篇 认识Docker 的作用好处
Docker 第一篇 认识Docker 的作用好处 (1)什么是Docker (2)Docker 优势劣势 Docker是去年开始关注并学习的,因为项目用到了AspnetCore 了解了之后总感觉会用 ...
- Python之路,第一篇:Python入门与基础
第一篇:Python入门与基础 1,什么是python? Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. 2,python的特征: (1)易于学习,易于利用: (2)开 ...
- Java Nested Classes(内部类~第一篇英文技术文档翻译)
鄙人最近尝试着翻译了自己的第一篇英文技术文档.Java Nested Classes Reference From Oracle Documentation 目录 嵌套类-Nested Classes ...
- Docker 学习1 容器技术基础入门
一.虚拟化 1.主机级别虚拟化(两种) a.类型一虚拟化:在硬件上直接安装hyper-ver,然后再安装虚拟机 1).操作系统就两棵树:进程树,文件系统树. 2).一个内核只能有一个root b.类型 ...
- Docker应用程序容器技术_转
转自:百度百科 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相 ...
- Go第一篇之轻松入门
Go语言简介 Go语言简史 Go 语言(或 Golang)是 Google 在 2007 年开发的一种开源编程语言,于 2009 年 11 月 10 日向全球公布.Go 是非常年轻的一门语言,它的主要 ...
- Docker容器技术入门
独立容器分开的条件: 1.Namespace命名空间 1.主机名和域名,UTS 2.文件系统,mount 3.进程间通信,IPC 4.独立的进程树PID 5.独立的用户User 6.独立的IP地址tc ...
- 第一篇、Python入门
一 编程与编程语言 python是一门编程语言,作为学习python的开始,需要事先搞明白:编程的目的是什么?什么是编程语言?什么是编程? 编程的目的: #计算机的发明,是为了用机器取代/解放人力,而 ...
- 持久层之 MyBatis: 第一篇:快速入门
MyBatis入门到精通 JDBC回顾 1.1.认识MyBatis 1.1.使用IDEA创建maven工程 1.2.引入mysql依赖包 1.3.准备数据 1.4 使用JDBC手写MyBatis框架 ...
随机推荐
- Editplus的运行JAVA的配置
工具--->参数设置
- Django - ORM - 事务, 乐观锁, 悲观锁
事务 概念 Transaction 事务:一个最小的不可再分的工作单元:通常一个事务对应一个完整的业务(例如银行账户转账业务,该业务就是一个最小的工作单元) 一个完整的业务需要批量的DML(inser ...
- cs6.8-oracle挂载ceph
https://ceph-users.ceph.narkive.com/EgcYJhbG/hammer-0-94-1-still-getting-feature-set-mismatch-for-ce ...
- JAVA 基础编程练习题43 【程序 43 求奇数个数】
43 [程序 43 求奇数个数] 题目:求 0—7 所能组成的奇数个数. package cskaoyan; public class cskaoyan43 { @org.junit.Test pub ...
- Delphi10.2安装过程详解
下载好的Delphi10.2是iso镜像,使用虚拟光驱,快速装载后,提示安装 运行setup.exe安装程序,选择安装语言——点击OK,最好关闭网络和退出其他软件 勾选同意条款,点击next ...
- 解决Python-OpenCV中cv2.rectangle报错
在PyTorch中测试DataLoader读取后的图像,对图像画框cv2.rectangle时报错: TypeError: Layout of the output array img is inco ...
- unity 读取灰度图生成按高程分层设色地形模型
准备灰度图 1.高程按比例对应hue色相(hsv)生成mesh效果 o.color = float4(hsv2rgb(float3(v.vertex.y/100.0, 0.5, 0.75)), 1.0 ...
- Flutter 的异步机制Future
Dart是一个单线程语言,可以理解成物理线路中的串联,当其遇到有延迟的运算(比如IO操作.延时执行)时,线程中按顺序执行的运算就会阻塞,用户就会感觉到卡顿,于是通常用异步处理来解决这个问题. Dart ...
- Ubuntu 14.04安装Python3
1.添加源 sudo add-apt-repository ppa:fkrull/deadsnakes 2.更新 & 安装 sudo apt-get update sudo apt- pyth ...
- Unity Shader基础:编译指令
UntiyShader中,编译指令分为两种: 1.顶点片元着色器(Vetex & Fragment Shader)使用的编译指令 2.表面着色器(Surface Shader)使用的编译指令 ...