Docker(一种轻量级的虚拟化方式) 简单来说就是可以打包程序和运行环境的容器,并可以将程序和环境一起发布。就如码头里面的集装箱。其优势:
- 更快的交付与部署
- 高效的资源利用
- 更轻松的迁移和扩展
- 更简单的更新和管理
使用 Docker 的好处:
- Docker容器虚拟化能方便高效的构建应用:如我们在本地开发项目要发布到阿里云环境,这时我们可以快速的把自己本地的环境和项目快速的打包成容器发布到阿里云上面去,这样避免了我们在阿里云上面重新配置环境。
容器技术与虚拟化技术架构
容器技术与虚拟化技术的性能比较
特性 | 容器 | 虚拟机 |
---|---|---|
启动速度 | 秒级 | 分钟级 |
虚拟化类型 | 操作系统虚拟化 | 硬件资源虚拟化 |
操作系统依赖 | 所有容器共享主机操作系统 | 每个VM 都在自己的OS中运行 |
磁盘使用 | 一般为MB | 一般为GB |
性能 | 本机性能 | 弱于 |
系统支持量 | 单机支持上千个容器 | 一般几十个 |
隔离性 | 进程级别隔离 | 完全隔离 |
扩展:操作系统虚拟化和硬件资源虚拟化的区别
操作系统虚拟化看似与硬件虚拟化出的虚拟机上安装的操作系统一样,都是产生多个操作系统,但操作系统虚拟化与硬件虚拟化之间还是有很多不同之处,区别如下:
(1)操作系统虚拟化是以原系统为模板,虚拟出的是原系统的副本,而硬件虚拟化虚拟的是硬件环境,然后真实地安装系统。
(2)操作系统虚拟化虚拟出的系统只能是物理操作系统的副本,而硬件虚报化虚拟出的系统可以为不同的系统,如Linux、Windows等。
(3)虚拟出的系统间关系不同,操作系统虚拟化虚报的多个系统有较强的联系。例如,多个虚拟系统能够同时被配置。原系统发生了改变,所有虚报出的系统都会改变。而硬件虚拟化虚拟的多个系统是相互独立的,与原系统也没有联系,原系统的损坏不会殃及虚拟系统。
(4)性能损耗不同,操作系统虚报化虚拟出的系统都是虚拟的,性能损耗低,而硬件虚拟化是在硬件虚报拟层上实实在在安装的操作系统,性能损耗高。 [1]
Docker 安装
1、删除旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2、 安装yum-utils包(它提供了yum-config-manager实用程序)并设置存储库。
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
3、安装最新的Docker 引擎
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
4、添加阿里云软件源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
5、启动docker
systemctl start docker