容器是什么?

概念

容器可以被看作是一种轻量级的虚拟化技术。与传统虚拟化技术相比,容器不需要为每个应用程序提供单独的操作系统,它们共享宿主机的操作系统内核。这使得容器更加轻便和高效。

想象一下,容器就像是一艘艘可以在海洋中独立航行的货轮,它们都遵循一定的标准建造,能够装载不同种类的货物(即应用程序)。这些货轮(容器)可以在任何港口(即操作系统)停靠,而不需要关心港口的具体情况。而传统的虚拟化技术则像是将每件货物都放在一个独立的小岛上,每个小岛都需要一套自己的基础设施,这样就会占用更多的资源和时间。

容器通过使用容器镜像来创建。容器镜像是包含运行应用程序所需的所有内容的静态文件,包括代码、运行库、环境变量和配置文件。这样,无论是在开发、测试还是生产环境中,都可以保证应用程序在这些容器中运行的一致性。

容器技术中最著名的一个工具是Docker,它简化了容器的创建和管理过程。通过Docker等工具,开发者可以轻松地将应用程序及其依赖环境打包成一个容器镜像,然后在任何支持容器的系统上运行这个镜像。

容器不等于Docker

Docker 是容器技术的一种实现和工具,它让容器的管理和使用变得更加便捷和流行。容器技术本身是一种轻量级的虚拟化技术,而 Docker 提供了一种标准化和自动化的方式来创建、部署和运行容器。

容器和 Docker 之间的关系可以通过以下类比来理解:

容器:就像是一系列的标准化集装箱,它们可以用来装载货物(即应用程序及其依赖),并且可以在不同的运输工具(即操作系统和云平台)之间轻松移动。
Docker:则可以看作是一套完整的集装箱运输系统,包括用于装载货物的集装箱(Docker 容器),用于制造集装箱的工厂(Docker 镜像),以及用于管理集装箱运输的物流系统(Docker 引擎和命令行工具)。
Docker 的一些关键组件包括:
Docker 镜像:是一个只读的模板,包含了创建 Docker 容器所需的所有指令和代码。
Docker 容器:是镜像的一个运行实例,它是一个独立的运行环境,可以被启动、停止、删除和迁移。
Docker 引擎:是 Docker 的核心部分,它负责构建、运行和分发 Docker 容器。
尽管 Docker 是目前最流行的容器工具之一,但容器技术并不等同于 Docker。容器技术的历史比 Docker 要悠久,其他容器技术还包括 CoreOS 的 rkt(Rocket)和 OCI(Open Container Initiative)等。Docker 的成功在于它简化了容器的使用,推动了容器技术的普及,并且在云计算和微服务架构中发挥了重要作用。

总结来说,Docker 是容器技术的一种流行实现,它让容器的管理和部署变得更加简单和高效。然而,容器技术更为广泛,包括了 Docker 以及其他遵循类似原则的工具和平台。

集群与容器

Kubernetes 1.20 版本开始,不再推荐使用 Docker 作为默认的容器运行时。这是因为 Kubernetes 采用的是容器运行时接口(Container Runtime Interface,CRI),而 Docker 并没有完全兼容这个接口。

Docker 一直以来都是最流行的容器工具之一,但是它在 Kubernetes 集群中并不是作为容器运行时,而是作为容器引擎来使用。Docker 引擎包括了更多的功能,比如构建镜像、管理镜像和容器等。在 Kubernetes 中,只需要容器运行时的功能,即负责容器的生命周期管理(创建、运行、停止、删除等)。

Kubernetes 社区更倾向于使用符合 CRI 的容器运行时,比如 containerd 和 CRI-O。这些运行时更加轻量级,专注于容器管理,并且与 Kubernetes 的集成更加紧密。containerd 是 Docker 的一个核心组件,它负责管理容器的生命周期,并且已经从 Docker 项目中分离出来,成为一个独立的项目。containerd 直接实现了 CRI,因此它可以无缝地与 Kubernetes 集成。

当 Kubernetes 1.20 版本宣布弃用 Docker 时,它实际上是在说它不再支持 Docker 作为容器运行时,而是推荐使用 containerd 或其他兼容 CRI 的运行时。这意味着在 Kubernetes 集群中,Docker 的角色可能会被 containerd 或其他运行时取代。

总结来说,Kubernetes 转向使用 containerd 或其他 CRI 兼容的运行时,是为了更好地遵循 Kubernetes 的设计原则,提高性能和可靠性,并且确保更好的集成和兼容性。Docker 仍然是一个强大的工具,用于容器镜像的构建和本地开发,但在 Kubernetes 集群中,它的角色可能会逐渐被专门的容器运行时代替。

如何安装Dockers

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/849495.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

麒麟v10系统arm64架构openssh9.7p1的rpm包

制作openssh 说明 理论上制作的多个rpm在arm64架构(aarch64)都适用 系统信息:4.19.90-17.ky10.aarch64 GNU/Linux 升级前备份好文件/etc/ssh、/etc/pam.d等以及开启telnet 升级后确认正常后关闭telnet 在之前制作过openssh-9.5p1基础上继续…

1.Linux入门

文章目录 一、介绍1.1 操作系统1.2 Linux1.3 虚拟机1.4 安装 CentOS7 二、远程连接 Linux2.1 FinalShell2.2 远程连接Linux 三、扩展3.1 WSL3.2 虚拟机快照 一、介绍 1.1 操作系统 我们平常所用的电脑是个人桌面操作系统,也就是Windows或者是macOS 目前我们要学的…

【YOLOv10改进[CONV]】使用DualConv二次创新C2f模块实现轻量化 + 含全部代码和详细修改方式 + 手撕结构图 + 全网首发

本文将使用DualConv二次创新C2f模块实现轻量化,助力YOLOv10目标检测效果的实践,文中含全部代码、详细修改方式以及手撕结构图。助您轻松理解改进的方法。 改进前和改进后的参数对比: 目录 一 DualConv 1 结合33卷积和11卷积核 2 DualConv 3 可视化 二 C2f_DualConv助…

el-dialog给弹框标题后加图标,鼠标悬停显示详细内容

效果&#xff1a; 代码&#xff1a; <div slot"title" class"el-dialog__title">标题<el-tooltip effect"dark" placement"right"><div slot"content">鼠标悬停显示</div><i class"el-icon…

水务设备数字化管理

在数字化浪潮席卷全球的今天&#xff0c;水务行业也迎来了数字化转型的重要契机。传统水务管理模式中&#xff0c;设备监控、数据收集、运行维护等环节往往存在效率低下、成本高昂、安全隐患多等问题。而HiWoo Cloud平台的出现&#xff0c;以其强大的设备接入能力、高效的数据处…

音视频开发23 FFmpeg 音频重采样

1.重采样 1.1 为什么要重采样&#xff1f; 为什么要重采样&#xff1f;当然是原有的⾳频参数不满⾜我们的需求。 ⽐如在FFmpeg解码⾳频的时候&#xff0c;不同的⾳源有不同的格式&#xff0c;采样率等&#xff0c;在解码后的数据中的这些参数也会不⼀致。 (最新FFmpeg 解码⾳频…

外贸自动化脚本编写会用到的源代码!

随着全球化的加速推进&#xff0c;外贸行业正迎来前所未有的发展机遇&#xff0c;为了提高工作效率、减少人为错误&#xff0c;并更好地把握市场机遇&#xff0c;越来越多的外贸企业开始关注自动化脚本的编写与应用。 自动化脚本不仅可以帮助企业实现业务流程的自动化&#xf…

语言模型解构——手搓BPE算法

1. BPE简介 BPE 的全称是 Byte Pair Encoding&#xff0c;原本是一种数据压缩算法&#xff0c;现已被广泛应用于自然语言处理中的分词任务。它通过统计高频字符序列来构建词表&#xff0c;并将词汇拆分为更小的、可重用的子词单元&#xff0c;例如&#xff1a;highest-> [h…

凸函数的局部最优也是全局最优的证明

这个性质早就知道了&#xff0c;但并不太清楚严谨的证明是什么。这也是《Introduction to linear optimization》书中第三章课后题的第一题。这篇博客给出严谨的证明。 Exercise 3.1 (Local minimum of convex functions) Let f : R n → R f: \mathcal{R}^n \rightarrow \m…

css 清除伪类active,hover效果

来源 :hover伪类可以让我们设置鼠标移入时的样式。 鼠标移入并选择后&#xff0c;我们就不想让这个元素触发active以及hover的效果该怎么整呢&#xff1f; 解决 使用pointer-events:none: 注意&#xff1a;pointer-event会阻挡所有的事件&#xff0c;包括js的click之类的事…

View 关于文本框可以输入e,表单验证不正确的问题

【问题原因】&#xff1a;使用的组件为<input typenumber/>&#xff0c;这个时候按道理只能输入数字&#xff0c;但是字母e确可以确认&#xff0c;原因是e代表数字2.71828&#xff0c;他也是个数字&#xff0c;所以能输入 【解决方案】&#xff1a; 1、使用组件<Input…

派单软件,改变服务业未来的神秘武器!

随着人们生活质量的提升&#xff0c;对于日常生活、工作中的售后维修服务响应时间、服务质量十分的在意。即使现在信息化时代快速发展&#xff0c;但还是有不少人们面临着以下问题。 你是否曾经因为等待维修服务而焦急万分&#xff1f; 你是否曾经因为繁琐的报修流程而倍感烦恼…

苍穹外卖笔记-08-套餐管理-增加,删除,修改,查询和起售停售套餐(上)

套餐管理 1 任务2 新增套餐2.1 需求分析和设计页面原型和业务规则接口设计setmeal和setmeal_dish表设计 2.2 代码开发2.2.1 根据分类id查询菜品DishControllerDishServiceDishServiceImplDishMapperDishMapper.xml 2.2.2 新增套餐接口SetmealControllerSetmealServiceSetmealSe…

【自定义View】Android圆饼进度条

源码 自定义属性 <?xml version"1.0" encoding"utf-8"?> <resources><declare-styleable name"ArcProgressView"><attr name"android:textSize" /><attr name"bgBorderWidth" format"d…

计算机毕业设计基于YOLOv8的头盔检测系统

1、安装Anaconda 官网下载或者哔哩哔哩有的up分享 https://www.anaconda.com/download 版本无所谓&#xff0c;安装位置不要有中文就行 2、创建环境yolov8 winR打开命令行 conda create -n yolov8 python3.9 3、打开源码 下载下来放到你想放的目录&#xff0c;直接用pyCharm或者…

【香橙派】Orange Pi AIpro体验——国产AI赋能

文章目录 &#x1f354;开箱&#x1f6f8;烧录镜像⭐启动系统&#x1f388;本机登录&#x1f388;远程登陆 &#x1f386;AI功能体验&#x1f50e;总结 &#x1f354;开箱 可以看到是很精美的开发组件 这里是香橙派官网 http://www.orangepi.cn/ 我们找到下面图片的内容&#…

【C/C++】C语言如何实现类似C++的智能指针?

在C中&#xff0c;智能指针是为了自动化资源管理而引入的工具。比如std::unique_ptr和std::shared_ptr等&#xff0c;它们管理着所持有对象的生命周期&#xff0c;可以在智能指针被销毁时自动释放其所持有的资源。在C语言中&#xff0c;虽然没有直接的智能指针概念&#xff0c;…

“冻干”凭什么好吃不肥喵?既能当零食又可做主食的冻干分享

近年来&#xff0c;冻干猫粮因其高品质而备受喜爱&#xff0c;吸引了无数猫主人的目光&#xff0c;像我这样的资深养猫人早已开始选择冻干喂养。但新手养猫的人&#xff0c;可能会感到迷茫&#xff1a;冻干猫粮到底是什么&#xff1f;冻干可以一直当主食喂吗&#xff1f; 一、…

爬虫技术笔记

一. Selenium技术 遇到安装并调用ChromeDriver问题&#xff1a; webdriver.Chrome DeprecationWarning: executable_path has been deprecated, please pass in a Service object 在 Selenium 4 中&#xff0c;executable_path 参数用于指定 ChromeDriver 的路径已经在 webdr…

SEO 中域权限和页面权限之间的区别

域权限 &#xff08;DA&#xff09; 和页面权限 &#xff08;PA&#xff09; 是 SEO&#xff08;搜索引擎优化&#xff09;中的两个重要概念&#xff0c;有助于评估网站和单个网页的强度和相关性。 目录 什么是域权限&#xff1f;什么是页面权限&#xff1f;主要区别结论 什么…