01-Docker简介

nobility 发布于 2022-07-22 2877 次阅读


Docker简介

虚拟化技术

Virtual machine stack example

通过在物理机上虚拟层(Hypervisor 虚拟机监视器)做物理资源虚拟化,在虚拟层上安装操作系统,也就是虚拟机,就可以为单独的虚拟机限定资源,从而达到最大的资源利用率

优点:可资源分配,易扩展,易云化

缺点:每个虚拟机都是一个完整的操作系统,操作系统本身消耗资源,也要为其分配资源

容器技术

Container stack example

容器技术是对软件和其依赖环境的标准化打包,多个容器之间相互隔离,共享同一个操作系统内核,容器技术可运行在大多数主流操作系统上,Docker是容器技术的一种实现

容器技术与虚拟化技术的主要区别就是:容器是应用程序层面的隔离,虚拟化是对物理资源层面的隔离

Docker安装

可从Docker官网获取任意系统的安装教程,以CentOS为例,若有旧版的Docker,使用下面命令卸载Docker环境

yum remove docker \
           docker-client \
           docker-client-latest \
           docker-common \
           docker-latest \
           docker-latest-logrotate \
           docker-logrotate \
           docker-engine

使用yum install yum-utils命令安装yum源管理器,并执行下面命令(yum-utils包提供的命令),用于添加获取最新版Docker的yum源,使用阿里云的Docker源安装会快些

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

使用yum install docker-ce docker-ce-cli containerd.io命令开始安装Docker,安装完成后使用systemctl start docker命令启动Docker服务

问题与解决

若是CentOS8安装可能会出错docker-ce-3:20.10.1-3.el7.x86_64 requires containerd.io >= 1.4.1,原因是ContOS8中使用Podman代替了Docker,Podman中的指令大部分与Docker相同

然而阿里的yum源containerd.io包目前(2020-12)的版本只有1.3的,而且docker-cedocker-ce-cli版本也是19.03.13-3,但是安装的却是高版本的,若非要想安装docker,可降低版本进行安装安装,使用下面命令指定安装的Docker版本,经过测试目前(2020-12)可用的最高版本

yum install docker-ce-18.09.0-3.el7 docker-ce-cli-18.09.0-3.el7 containerd.io

Docker镜像加速

默认镜像的下载是从国外进行镜像下载的,可设置镜像加速,使用国内的镜像加速,方法如下:以CentOS为例,在/etc/docker/daemon.json中写入如下内容(如果文件不存在请新建该文件),之后重新启动服务

建议使用那家的云就用那家的镜像加速,若是本地虚拟机经过测试使用七牛云最快,最快的放数组前面

{
  "registry-mirrors": [
    "https://mirror.ccs.tencentyun.com",
    "https://mirror.baidubce.com",
    "https://reg-mirror.qiniu.com"
  ]
}
此作者没有提供个人介绍
最后更新于 2022-07-22