一、Docker的简述
Docker是一种轻量级的“虚拟机”,在Linux容器里运行应用的开源工具
Docker与虚拟机的区别
类型 | Docker | 虚拟机 |
---|---|---|
占用资源 | 较少 | 较多 |
启动时间 | 短,毫秒 | 较长,几分钟 |
安全 | 共享内核,不安全 | 系统逻辑隔离,安全 |
服务 | 一个容器一般只运行一个服务 | 可以运行多个服务 |
是否安装系统 | 不需要 | 需要 |
镜像存储 | GB-TB | KB-MB |
高可用策略 | 备份、容灾、迁移 | 弹性、负载、动态 |
Docker的使用场景
- 打包应用程序简单化部署
- 可脱离底层硬件任意迁移
二、Docker基础安装及环境配置
先安装Docker的依赖环境
[root@server1 ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
已加载插件:fastestmirror, langpacks
base | 3.6 kB 00:00:00
extras | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
(1/4): extras/7/x86_64/primary_db | 222 kB 00:00:00
(2/4): base/7/x86_64/group_gz | 153 kB 00:00:00
(3/4): base/7/x86_64/primary_db | 6.1 MB 00:00:00
(4/4): updates/7/x86_64/primary_db | 3.7 MB 00:00:02
#yum-utils提供了 yum-config-manager
#device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2
#Device Mapper 是 Linux2.6 内核中支持逻辑卷管理的通用设备映射机制
他为实验用于储存资源管理的块设备驱动提供了一共高度模块化的内核架构
再配置阿里云镜像源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
已加载插件:fastestmirror, langpacks
adding repo from: https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
grabbing file https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo
再安装docker-ce
[root@server1 ~]# yum -y install docker-ce
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.ustc.edu.cn
* extras: mirrors.ustc.edu.cn
* updates: mirrors.ustc.edu.cn
启动docker
systemctl start docker.service
镜像加速(可在阿里云官网申请自己的镜像加速地址)
tee /etc/docker/daemon.json <<-'EOF'
> {
> "registry-mirrors": ["https://xm3e5k4h.mirror.aliyuncs.com"]
> }
> EOF
{
"registry-mirrors": ["https://xm3e5k4h.mirror.aliyuncs.com"]
}
查看docker版本
[root@server2 opt]# docker version
Client: Docker Engine - Community
Version: 19.03.13
API version: 1.40
Go version: go1.13.15
Git commit: 4484c46d9d
Built: Wed Sep 16 17:03:45 2020
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.13
API version: 1.40 (minimum version 1.12)
Go version: go1.13.15
Git commit: 4484c46d9d
Built: Wed Sep 16 17:02:21 2020
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.3.7
GitCommit: 8fba4e9a7d01810a393d5d25a3621dc101981175
runc:
Version: 1.0.0-rc10
GitCommit: dc9208a3303feef5b3839f4323d9beb36df0a9dd
docker-init:
Version: 0.18.0
GitCommit: fec3683
安装完成