Docker——Docker 架构和 centOS 下安装 Docker

Docker——Docker 架构和centOS下安装Docker

1、Docker 架构

Docker 三个基本概念

  • 镜像(Image):Docker 镜像是用于创建 Docker 容器的模板,通过这个镜像可以创建多个容器。
  • 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和对象一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。容器是独立运行的一个或一组应用。
  • 仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。一个 Docker Registry 中可以包含多个仓库(Repository),每个仓库可以包含多个标签(Tag),每个标签对应一个镜像。通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应该软件的各个版本。我们可以通过 <仓库名>:<标签> 的格式来指定具体是这个软件哪个版本的镜像。如果不给出标签,将以 latest 作为默认标签。

Docker 架构图:

在这里插入图片描述

Docker 架构图名词介绍:

Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。

Docker 客户端(Client):Docker 客户端通过命令行或者其他工具使用 Docker SDK与 Docker 的守护进程通信。

Docker 主机(Host):一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。

Docker Hub

Docker Hub:Docker Hub提供了庞大的镜像集合供使用。

Docker Hub地址:https://hub.docker.com

2、centOS 安装 Docker

操作系统要求

1、需要 CentOS 7 或 8 的维护版本。不支持或测试存档版本。

在这里插入图片描述

2、必须启用CentOS Extras存储库。默认情况下,此存储库已启用,但如果已禁用,则需要 重新启用它

3、建议使用overlay2存储驱动程序。

卸载旧版本

如有以前安装的老版本(Docker名称是docker 或docker-engine),需要先删除。

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

如果 yum报告没有安装这些软件包,那也没关系。

上述操作只会删除docker本身,但老版本保存在/var/lib/docker/的内容,包括镜像、容器、卷和网络需要手动删除。

安装:使用仓库(repository)安装(推荐)

1、安装yum-utils

yum install -y yum-utils

在这里插入图片描述

2、设置镜像仓库

yum-config-manager 
     --add-repo 
     http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo  #使用阿里国内源安装docker,速度快

在这里插入图片描述

3、更新yum软件包索引

yum makecache fast

在这里插入图片描述

4、安装 Docker CE(社区版)

4.1、安装最新的Docker CE版本:

yum install docker-ce docker-ce-cli containerd.io

如果这是您第一次从最近添加的存储库安装软件包,系统将提示您接受GPG密钥,并显示密钥的指纹。 验证指纹是否正确,如果是,请接受密钥。 指纹应该匹配

060a 61c5 1b55 8a7f 742b 77aa c52f eb6b 621e 9f35

4.2、安装特定版本的 Docker CE

在生产系统上,应该安装特定版本的Docker CE,而不是始终使用最新版本。

查询可用版本:yum list docker-ce --showduplicates | sort -r

[root@CHENG /]# yum list docker-ce --showduplicates | sort -r
Loading mirror speeds from cached hostfile
Loaded plugins: fastestmirror
Installed Packages
docker-ce.x86_64            3:20.10.9-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:20.10.8-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:20.10.7-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:20.10.6-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:20.10.5-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:20.10.4-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:20.10.3-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:20.10.2-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:20.10.1-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:20.10.11-3.el7                   docker-ce-stable 
docker-ce.x86_64            3:20.10.11-3.el7                   @docker-ce-stable
docker-ce.x86_64            3:20.10.10-3.el7                   docker-ce-stable 
docker-ce.x86_64            3:20.10.0-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:19.03.9-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:19.03.8-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:19.03.7-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:19.03.6-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:19.03.5-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:19.03.4-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:19.03.3-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:19.03.2-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:19.03.15-3.el7                   docker-ce-stable 
docker-ce.x86_64            3:19.03.14-3.el7                   docker-ce-stable 
docker-ce.x86_64            3:19.03.1-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:19.03.13-3.el7                   docker-ce-stable 
docker-ce.x86_64            3:19.03.12-3.el7                   docker-ce-stable 
docker-ce.x86_64            3:19.03.11-3.el7                   docker-ce-stable 
docker-ce.x86_64            3:19.03.10-3.el7                   docker-ce-stable 
docker-ce.x86_64            3:19.03.0-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:18.09.9-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:18.09.8-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:18.09.7-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:18.09.6-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:18.09.5-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:18.09.4-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:18.09.3-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:18.09.2-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:18.09.1-3.el7                    docker-ce-stable 
docker-ce.x86_64            3:18.09.0-3.el7                    docker-ce-stable 
docker-ce.x86_64            18.06.3.ce-3.el7                   docker-ce-stable 
docker-ce.x86_64            18.06.2.ce-3.el7                   docker-ce-stable 
docker-ce.x86_64            18.06.1.ce-3.el7                   docker-ce-stable 
docker-ce.x86_64            18.06.0.ce-3.el7                   docker-ce-stable 
docker-ce.x86_64            18.03.1.ce-1.el7.centos            docker-ce-stable 
docker-ce.x86_64            18.03.0.ce-1.el7.centos            docker-ce-stable 
docker-ce.x86_64            17.12.1.ce-1.el7.centos            docker-ce-stable 
docker-ce.x86_64            17.12.0.ce-1.el7.centos            docker-ce-stable 
docker-ce.x86_64            17.09.1.ce-1.el7.centos            docker-ce-stable 
docker-ce.x86_64            17.09.0.ce-1.el7.centos            docker-ce-stable 
docker-ce.x86_64            17.06.2.ce-1.el7.centos            docker-ce-stable 
docker-ce.x86_64            17.06.1.ce-1.el7.centos            docker-ce-stable 
docker-ce.x86_64            17.06.0.ce-1.el7.centos            docker-ce-stable 
docker-ce.x86_64            17.03.3.ce-1.el7                   docker-ce-stable 
docker-ce.x86_64            17.03.2.ce-1.el7.centos            docker-ce-stable 
docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable 
docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable 
 * centos-sclo-sclo: mirrors.163.com
 * centos-sclo-rh: mirrors.163.com
Available Packages

安装指定版本:

yum install docker-ce-18.03.1.ce-1.el7.centos -y

5、启动Docker

systemctl start docker

6、查看Docker 版本

docker version

在这里插入图片描述

7、通过运行hello-world 映像验证 Docker Engine 是否已正确安装

docker run hello-world

此命令下载测试镜像并在容器中运行它。当容器运行时,它会打印类似发下的消息,则说明安装成功。

在这里插入图片描述

8、查看上面下载的 hello-world 镜像

docker images

在这里插入图片描述

3、Docker 引擎的卸载

1、卸载 Docker Engine、CLI 和 Containerd 包:

yum remove docker-ce docker-ce-cli containerd.io

2、主机上的映像、容器、卷或自定义配置文件不会自动删除。删除所有镜像、容器和卷:

rm -rf /var/lib/docker   #docker的默认工作路径
rm -rf /var/lib/containerd

4、配置阿里云镜像加速

1、登录阿里云,找到 容器镜像服务

在这里插入图片描述

2、找到镜像加速地址

在这里插入图片描述

3、配置使用

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://lidtl20v.mirror.aliyuncs.com"]
}
EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

在这里插入图片描述

阿里云镜像加速配置完成。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>