华夏润达建设有限公司网站,营销网站建设门户,河北新出现的传染病,湖南高速通app下载1.认识Docker的基本架构
下面这张图是docker官网上的#xff0c;介绍了整个Docker的基础架构#xff0c;我们根据这张图来学习一下docker的涉及到的一些相关概念。
1.1 Docker的架构组成
Docker架构是由Client(客户端)、Docker Host(服务端)、Registry(远程仓库)组成。
…1.认识Docker的基本架构
下面这张图是docker官网上的介绍了整个Docker的基础架构我们根据这张图来学习一下docker的涉及到的一些相关概念。
1.1 Docker的架构组成
Docker架构是由Client(客户端)、Docker Host(服务端)、Registry(远程仓库)组成。
Client(客户端)使用Docker API向服务端发送命令比如build、run、pull、push等命令Docker Host(服务端)启动了一个守护进程它来真正管理镜像和容器相应的也接收客户端的命令Registry(远程仓库)主要就是存储镜像文件方便共享类似git一样。
Docker是一个Client-Server结构的系统Docker守护进程运行的主机上通过Socket连接从客户端访问守护进程接收到客户端的命令来管理运行在主机上的容器。
1.2 Docker的三大要素
Image(镜像)Docker镜像就好比一个模板可以通过这模板来创建容器服务通过这个镜像可以创建多个容器。container(容器)容器就可以理解成一个简易版的Linux运行时环境在这个Linux中还运行这我们的应用程序。仓库repository:集中存放镜像文件的地方。仓库分为公开仓库和私有仓库Docker官方的公开仓库是Docker Hub:https://hub.docker.com/。当然我们国内也有不少公开仓库包括阿里云、网易云等
那么怎么更好的理解这散打要素呢学过java等面向对象编程的同学我们可以类比一下所谓的镜像其实就是对应java的类容器就对应java的对象类的实例一个类可以new 出很多对象实例同理一个镜像也可以生成很多容器仓库就可以类比Maven仓库只不过Maven放的是jar包而仓库放的是镜像文件。
1.3 小结
Image可以看作是容器的模板Docker根据image镜像文件生成容器实例同一个image镜像可以生成多个同时运行的容器实例。
2.Docker 整体架构及底层通信原理
用户使用Docker Client 与Docker Daemon建立通信并发送请求给后者Docker Daemon作为Docker架构的主体部分首先提供Docker Server的功能使其可以接受Docker Client的请求Docker Engine 执行Docker内部的一系列工作使每一项工作都是以一个Job的形式存在;Job运行过程中当需要容器镜像时就从Docker Registry中下载镜像并通过镜像管理驱动Graph driver 将下载镜像以Graph的形式存储当需要为Docker创建网络环境时通过网络管理驱动 Network driver 创建并配置Docker容器网络环境当需要限制Docker容器运行资源或执行用户指令等操作时则通过Exec driver来完成Libcontainer是一项独立的容器管理包Network driver以及Exec driver都是通过Libcontainer来实现具体对容器进行的操作。
3.Docker在Centos7上安装Docker 官网安装指南 https://docs.docker.com/engine/install/centos/ 检查CentOS的版本 1. CentOS 7
2. CentOS 8 (stream)
3. CentOS 9 (stream)
4. centos-extras库必须启用默认情况下此存储库是启用的但是如果已禁用它则需要重新启用它。删除旧的版本 卸载Docker Engine sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine手动删除所有的image、container和文件 sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd安装基本的工具包 yum install -y yum-utils设置稳定的镜像仓库 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.reposudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo我们最好加上国内的阿里云镜像仓库否则有时候会拉取不下来错误如下 安装Docker Engine 安装最新版本的docker sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin启动docker sudo systemctl start docker验证docker sudo docker run hello-world就这么简单我们就成功的安装了docker。 4.安装镜像加速器
由于网络原因可能导致我们的下载速度比较慢我们最好加入安装镜像加速器加速下载镜像文件。这里我们以安装阿里云的镜像加速器为例来说明。
我们在阿里云产品上找到容器镜像服务—镜像工具—镜像加速器可以看到里面的详细的配置和说明。 sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json -EOF
{registry-mirrors: [https://xxxxxs.mirror.aliyuncs.com]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker