使用容器的原因
001 上线流程繁琐
开发->测试->申请资源->审批->部署->测试等环节
002 资源利用率低
普遍服务器利用率低,造成过多浪费
003 扩容/缩容不及时
业务高峰期扩容流程繁琐,上线不及时
004 服务器环境臃肿
服务器越来越臃肿,对维护、迁移带来困难
005 环境不一致性
关于Docker
001 使用最广泛的开源容器引擎
002 一种操作系统级的虚拟化技术
003 依赖于Linux内核特性:Namespace(资源隔离)和Cgroups(资源限制)
004 一个简单的应用程序打包工具
Docker设计目标
001 提供简单的应用程序打包工具
002 开发人员和运维人员职责逻辑分离
003 多环境保持一致性
1638254919302.png
Docker基本组成
1638255012065.png
容器 VS 虚拟机
1638255043917.png
Hypenrvisor:比如vmware
GuestOS:虚拟出不同的宿主机
|
Container |
VM |
启动速度 |
秒级 |
分钟级 |
运行性能 |
接近原生 |
5%左右损失 |
磁盘占用 |
MB |
GB |
数量 |
成百上千 |
一般几十台 |
隔离性 |
进程级 |
|
操作系统 |
主要支持Linux |
几乎所有 |
封装程度 |
只打包项目代码和依赖关系,共享宿主机内核 |
完整的操作系统 |
Docker应用场景
001 应用程序打包和发布
002 应用程序隔离
003 持续集成
004 部署微服务
005 快速搭建测试环境
006 提供PaaS产品(平台即服务)
安装Docker
# 安装依赖包
yum install -y yum-utils
# 添加Docker软件包源
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
# 安装Docker CE
yum install -y docker-ce
# 启动Docker服务并设置开机启动
systemctl start docker
systemctl enable docker
https://docs.docker.com/engine/install/centos/
官方文档:https://docs.docker.com
阿里云源:http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
网友评论