码迷,mamicode.com
首页 > 其他好文 > 详细

Docker 引擎的安装 -->>存储库安装

时间:2021-06-22 18:26:51      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:运行时   内核   接口   构建   进入   优点   中心   方便   性能   

Docker理论知识

  Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。 ??

  Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版) ??

  Docker EE专为企业的发展和IT团队建立,为企业提供最安全的容器平台,以应用为中心的平台,有专门的团队支持,可在经过认证的操作系统和云提供商中使用,并可运行来自DockerStore的经过认证的容器和插件。 ??

  Docker CE是免费的Docker产品的新名称,Docker CE包含了完整的Docker平台,非常适合开发人员和运维团队构建容器APP。

Docker的三个基本概念

  镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。  

  容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

  仓库(Repository):仓库可看着一个代码控制中心,用来保存镜像。

Docker架构

  Docker 镜像(Images):Docker 镜像是用于创建 Docker 容器的模板,比如 Ubuntu 系统。

  Docker 容器(Container):容器是独立运行的一个或一组应用,是镜像运行时的实体。

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

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

  Docker Registry:Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。

  Docker Hub提供了庞大的镜像集合供使用。一个 Docker Registry 中可以包含多个仓库(Repository);每个仓库可以包含多个标签(Tag);每个标签对应一个镜像。通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应该软件的各个版本。我们可以通过 <仓库名>:<标签> 的格式来指定具体是这个软件哪个版本的镜像。如果不给出标签,将以 latest 作为默认标签。

  Docker Machine:Docker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。 

 Docker的优点

灵活:即使是最复杂的应用也可以集装箱化。
轻量级:容器利用并共享主机内核。
可互换:可以即时部署更新和升级。
便携式:可以在本地构建,部署到云,并在任何地方运行。
可扩展:可以增加并自动分发容器副本。
可堆叠:可以垂直和即时堆叠服务。
在同一硬件上运行更多工作负载。
允许高度可移植的工作负载

Docker私有仓库

Docker仓库分为公有仓库和私有仓库,然而公有仓库在某些情况下并不适用于公司内部传输。通过对比两种仓库的特点,大致可以得出私有仓库有以下优点:

① 节省带宽;

② 传输速度快;

③ 方便存储。

Docker镜像及容器的使用

Image(镜像)是一个只读模板,由Dockerfile文件描述镜像内容,镜像定义类似面对对象的类。

构建一个镜像实际就是安装、配置、运行的过程。镜像可以用来创建Docker容器,一个镜像可以创建很多容器。

容器是一个镜像运行的实例,容器由镜像创建,运行用户指定的指令或者Dockerfile定义的运行指令。

容器之间都是互不可见的。

容器编排

容器编排是指对单独组件和应用层的工作进行组织的流程。

应用一般由单独容器化的组件(通常称为微服务)组成,且必须按照顺序在网络级别进行组织,使其能够按照计划运行。

所有的容器编排引擎均可让用户控制器启动和停止的时间,将其分组合到集群中,以及协调应用组合的流程。

Docker引擎的安装

使用存储库安装

在新主机上首次安装 Docker Engine 之前,您需要设置 Docker 存储库。之后,您可以从存储库安装和更新 Docker。

设置存储库 安装yum-utils包(提供yum-config-manager 实用程序)并设置稳定存储库。

$ sudo yum install -y yum-utils
$ sudo yum-config-manager     --add-repo     https://download.docker.com/linux/centos/docker-ce.repo

可选:启用夜间或测试存储库。  这些存储库包含在docker.repo上面的文件中,但默认情况下是禁用的。您可以在稳定存储库旁边启用它们。以下命令启用夜间存储库。

$  sudo yum-config-manager --enable docker-ce-nightly

要启用测试通道,请运行以下命令:

$ sudo yum-config-manager --enable docker-ce-test

您可以通过运行带有标志命令来禁用夜间测试存储库 要重新启用它,请使用该标志。以下命令禁用夜间存储库。yum-config-manager--disable--enable

$ sudo yum-config-manager --disable docker-ce-nightly

安装Docker引擎

安装最新版本的 Docker Engine 和 containerd,或者进入下一步安装特定版本:

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

如果提示接受 GPG 密钥,请验证指纹是否匹配060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35,如果匹配 ,请接受。

Docker 已安装但未启动。docker组被创建,但没有用户添加到组。

要安装特定版本的 Docker Engine,请在 repo 中列出可用版本,然后选择并安装一种。列出并排序您的仓库中可用的版本。此示例按版本号对结果进行排序,从高到低,并被截断。

$ yum list docker-ce --showduplicates | sort -r
docker
-ce.x86_64 3:20.10.7-3.el7 docker-ce-test docker-ce.x86_64 3:20.10.7-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-test 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-test docker-ce.x86_64 3:20.10.5-3.el7 docker-ce-stable
$ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

Docker 已安装但未启动。docker组被创建,但没有用户添加到组。

启动 Docker。

$  sudo systemctl start docker

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

$ sudo docker run hello-world

此命令下载测试映像并在容器中运行它。当容器运行时,它会打印一条信息性消息并退出。

至此Docker引擎安装完毕

Docker 引擎的安装 -->>存储库安装

标签:运行时   内核   接口   构建   进入   优点   中心   方便   性能   

原文地址:https://www.cnblogs.com/yj-8023/p/14918248.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!