文章目录
一、Docker 概述
1.1、Docker 是什么
- 是一种轻量级的“虚拟机”
- Docker是一个用于开发,交付和运行应用程序的开放平台。Docker使您能够将应用程序与基础架构分开,从而可以快速交付软件。
- 是一个开源的应用容器引擎,让开发者可以打包大门的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或者Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口
- 沙箱(Sandbox):在计算机安全领域,沙箱是一种程序的隔离运行机制
- Docker从一开始就以提供标准化的运行时环境为目标,真正做到“build once, run anywhere”,可以将同一个构建版本用于开发、测试、预发布、生产等任何环境,并且做到了与底层操作系统的解耦。在此基础上还进一步发展出了CaaS(容器即服务)技术。
1.2、Docker 使用场景
- 打包应用程序简单部署
- 部署微服务
- 提供PAAS产品(平台即服务){OpenStack的云主机类似于阿里云的ECS,属于IAAS、Docker(K8S) 属于PAAS}
- 持续集成和持续交付(CI/CD):开发到测试发布
- 可脱离底层硬件任意迁移(实现了应用的隔离,将应用拆分并进行解耦),例如:服务器从腾讯云迁移到阿里云
1.3、容器与虚拟机的区别
- 虚拟机:虚拟机硬件(cpu,内存,磁盘,网络)镜像 装系统
- 容器:进程 (服务,系统)环境
- 一台虚拟机相当于一个进程
- 里面的vcpu…相当于里面的线程
- 容器:共享内核资源的,所以相对而言不安全
两大生态圈:
- OpenStack ---- 虚拟机
- kubernetes ---- 容器
1.4、Docker 核心概念
镜像
- 一个面向docker容器引擎的只读模板
容器
- 从镜像创建的运行实列
仓库
- 集中保存镜像的地方
二、部署19版docker
1:安装依赖包
yum install -y yum-utils device-mapper-persistent-data Ivm2
- yum-utils 提供了 yum-config-manager
- device mapper 存储驱动程序需要 device-mapper-persistent-data 和 Ivm2
- Device Mapper
是Linux2.6内核中支持逻辑卷管理的通用设备映射机制,它为实现用于存储资源管理的块设备驱动提供了一个高度模块化的内核架构。
2:设置阿里云镜像源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
指向阿里云镜像源才能yum下载docker
3:安装 docker-ce
yum install -y docker-ce
systemctl stop firewalld '关闭防火墙'
setenforce 0 '查看核心防护'
vim /etc/selinux/config '核心防护配置文件'
SELINUX=disabIed