什么是容器?
• 容器技术已经成为应用程序封装和交付的核心技术
• 容器技术的核心有以下几个内核技术组成:
– CGroups(Control Groups)-资源管理 -------资源隔离,控制各个容器使用cpu,内存的等资源,避免发生争抢
– NameSpace-进程隔离 -------创建虚拟交换机使得容器之间进行通信,也可以实现隔离。
进程隔离(在linux可以看到全局),信号隔离,网络隔离,主机名隔离
– SELinux安全 容器在物理机内部的,内部的防火墙是没有办法的,所以依赖于selinux进行
容器是底层的模块进行的隔离
• 由于是在物理机上实施隔离,启动一个容器,可以像
启动一个进程一样快速
什么是Docker?
• Docker是完整的一套容器管理系统 与virsh命令相似
• Docker提供了一组命令,让用户更加方便直接地使用容器技术,而不需要过多关心底层内核技术
前段盘不是一个完整的虚拟化技术,Docker只处理前端盘,
依赖底层的操作系统
学容器的方法:发现问题处理问题
Docker优点
• 相比于传统的虚拟化技术,容器更加简洁高效
• 传统虚拟机需要给每个VM安装操作系统
• 容器使用的共享公共库和程序
Docker的缺点
• 容器的隔离性没有虚拟化强
• 共用Linux内核,安全性有先天缺陷
• SELinux难以驾驭
• 监控容器和容器排错是挑战
docker是和虚拟化互补的