快速认识什么是:Docker

news2025/1/26 14:13:20

Docker,一种可以将软件打包到容器中并在任何环境中可靠运行的工具。但什么是容器以及为什么需要容器呢?今天就来一起学快速入门一下Docker吧!希望本文对您有所帮助。

假设您使用 Cobol 构建了一个在某种奇怪风格的 Linux 上运行的应用程序。您想与您的朋友分享这个应用程序,但他有一个完全不同的系统。那么问题就变成了,我们如何在任何机器上复制我们的软件所需的环境?

打包应用程序的一种方法是使用虚拟机,在虚拟机中模拟硬件,然后安装所需的操作系统和依赖项。

这允许我们在同一基础设施上运行多个应用程序。然而,由于每个虚拟机都运行自己的操作系统,因此它们往往体积庞大且速度缓慢。

现在,Docker 容器在概念上与虚拟机非常相似,但有一个关键区别。

容器只虚拟化操作系统,而不是虚拟化硬件。或者换句话说,所有应用程序或容器都由单个内核运行,这使得几乎所有内容都更快、更高效。

三个基本元素。

Docker世界包含三个基本元素:

  • Dockerfile

  • 镜像

  • 容器

Dockerfile 就像 DNA。它只是告诉 Docker 如何构建镜像的代码。镜像本身就是软件的快照,以及一直到操作系统级别的所有依赖项。该镜像是不可变的,它可用于启动多个容器,这是您在现实世界中运行的实际软件。

创建一个 docker 文件,并使用 from 从现有模板(如 Ubuntu)开始。

该基础镜像是从云端下载的,您还可以将自己的镜像上传到各种不同的 Docker 注册表。

从那里,您可能需要使用 run 来运行将依赖项安装到映像中的终端命令。您可以设置环境变量并执行各种其他操作,然后您要做的最后一件事就是设置启动容器时执行的默认命令。

现在,我们可以通过运行 docker build 命令来创建镜像文件。

它会遍历 Dockerfile 中的每个步骤来逐层构建镜像。

然后,我们可以使用 docker run 命令将此映像作为容器变为现实。

由于您的应用程序需要更多资源,您可以在多台计算机、多个云、本地或任何您想要可靠的地方运行它。

文章转载自:程序猿DD

原文链接:https://www.cnblogs.com/didispace/p/17884039.html

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

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

相关文章

Spring Boot Async:从入门到精通,原理详解与最佳实践

Spring Boot 的异步功能(Async)允许我们将某些任务异步执行,而不会阻塞主线程。这对于处理耗时的操作非常有用,如发送电子邮件、生成报表、调用外部 API 等。通过异步处理,我们可以释放主线程,让它继续处理…

【学习笔记】lyndon分解

摘抄自quack的ppt。 这部分和 s a sa sa的关联比较大,可以加深对 s a sa sa的理解。 Part 1 如果字符串 s s s的字典序在 s s s以及 s s s的所有后缀中是最小的,则称 s s s是一个 lyndon \text{lyndon} lyndon串。 lyndon \text{lyndon} lyndon分解&a…

连接Redis报错解决方案

连接Redis报错&解决方案 问题描述:Could not connect to Redis at 127.0.0.1:6379: 由于目标计算机积极拒绝,无法连接。 问题原因:redis启动方式不正确 解决方案: 在redis根目录下打开命令行窗口,输入命令redi…

【SpringBoot】分层解耦

1. 三层架构 Controller:控制层。接收前端发送的请求,调用Service层来进行逻辑处理(Service层处理完后,把处理结果返回给Controller层)Service:业务逻辑层。处理具体的业务逻辑。调用Dao层(逻辑…

旺店通无代码API集成:电商平台的客服系统和营销自动化解决方案

无代码API集成的力量 在数字化转型的浪潮中,电商平台迅速崛起,成为企业不可或缺的销售和市场推广渠道。旺店通企业版奇门以其无代码开发的连接和集成能力,重塑了电商系统的运营模式。无需繁琐的API开发,企业即可实现电商平台与客…

AI:95-基于卷积神经网络的艺术品风格分类

🚀 本文选自专栏:人工智能领域200例教程专栏 从基础到实践,深入学习。无论你是初学者还是经验丰富的老手,对于本专栏案例和项目实践都有参考学习意义。 ✨✨✨ 每一个案例都附带有在本地跑过的核心代码,详细讲解供大家学习,希望可以帮到大家。欢迎订阅支持,正在不断更新…

第一课【习题】HarmonyOS应用/元服务上架

元服务发布的国家与地区仅限于“中国大陆” 编译打包的软件包存放在项目目录build > outputs > default下 创建应用时,应用包名需要和app.json5或者config.json文件中哪个字段保持一致? 发布应用时需要创建证书,证书类型选择什么…

csdn调整样式之居中、空格、换行、字体字号、自动生成目录

文章目录 1、居中2、空格3、换行4、字体字号5、[TOC](文章目录) 自动生成目录6、列表7、分割线8、引用代码 1、居中 <center>文字居中 2、空格 一个空格   &emsp;三个空格一个空格    三个空格 3、换行 <br>你好 4、字体字号 <font color red size…

# K近邻算法 度量距离

K近邻算法 度量距离 欧氏距离(Euclidean distance) 欧几里得度量(euclidean metric)(也称欧氏距离)是一个通常采用的距离定义&#xff0c;指在 m m m维空间中两个点之间的真实距离&#xff0c;或者向量的自然长度(即该点到原点的距离)。在二维和三维空间中的欧氏距离就是两点…

Kubernetes创始人发声!K8s 变得太复杂了

关注【云原生百宝箱】公众号&#xff0c;获取更多云原生消息 Kubernetes 变得太复杂了&#xff0c;它需要学会克制&#xff0c;否则就会停止创新&#xff0c;直至丢失大本营。 Kubernetes 联合创始人Tim Hockin 罕见发声。在今年的 KubeCon 上&#xff0c;他建议&#xff0c;K…

【Altera】Quartus II 软件怎么更改bank电压

前言 FPGA的bank电压要和物理设计相同&#xff0c;Quartus II 软件怎么更改bank电压&#xff1f; 步骤 启动 Pin Planner&#xff08;快捷方式&#xff1a;CTRL Shift N&#xff09;右键单击 Pin Planner 的背景&#xff0c;然后选择"显示 I/O bank"。右键…

学习git后,真正在项目中如何使用?

文章目录 前言下载和安装Git克隆远程仓库PyCharm链接本地Git创建分支修改项目工程并提交到本地仓库推送到远程仓库小结 前言 网上学习git的教程&#xff0c;甚至还有很多可视化很好的git教程&#xff0c;入门git也不是什么难事。但我发现&#xff0c;当我真的要从网上克隆一个…

Vue:Vue的开发者工具不显示Vue实例中的data数据

一、情况描述 代码&#xff1a; 页面&#xff1a; 可以看到&#xff0c;input获取到了data数据&#xff0c;但是&#xff0c;vue-devtool没有获取到data数据 二、解决办法 解决办法1&#xff1a; data.name的值不能全是中文&#xff0c;比如改成aa尚硅谷 解决办法2&…

Windows下使用AndroidStudio及CMake编译Android可执行程序或静态库动态库

Windows下使用AndroidStudio及CMake编译Android可执行程序或静态库动态库 文章目录 Windows下使用AndroidStudio及CMake编译Android可执行程序或静态库动态库一、前言二、编译环境三、示例C/CPP程序1、总体工程结构2、示例代码3、CMakeLists.txt&#xff08;重要&#xff09;4、…

【外观模式】SpringBoot集成mail发送邮件

前言 发送邮件功能&#xff0c;借鉴 刚果商城&#xff0c;根据文档及项目代码实现。整理总结便有了此文&#xff0c;文章有不对的点&#xff0c;请联系博主指出&#xff0c;请多多点赞收藏&#xff0c;您的支持是我最大的动力~ 发送邮件功能主要借助 mail、freemarker以及rocke…

包装类, 泛型---java

目录 一. 包装类 1.1 基本数据类型和对应的包装类 1.2 装箱和拆箱 二. 泛型 2.1什么是泛型 2.2泛型的引入 2.3 泛型类语法 2.4 泛型类的使用 2.5 裸类型(Raw Type)(了解) 2.6 泛型是如何编译的 2.7 泛型的上界 2.8 泛型方法 一. 包装类 在 Java 中&#xff0c;由于基本…

爱智EdgerOS之深入解析AI图像引擎如何实现AI视觉开发

一、前言 AI 视觉是为了让计算机利用摄像机来替代人眼对目标进行识别&#xff0c;跟踪并进一步完成一些更加复杂的图像处理。这一领域的学术研究已经存在了很长时间&#xff0c;但直到 20 世纪 70 年代后期&#xff0c;当计算机的性能提高到足以处理图片这样大规模的数据时&am…

DSP处理器及其体系结构特点(您都用过哪些DSP?)

DSP处理器概述 数字信号处理器&#xff08;Digital Signal Processor&#xff0c;DSP&#xff09;是一种专门设计用于执行数字信号处理任务的微处理器类型。与通用微处理器&#xff08;如CPU&#xff09;相比&#xff0c;DSP处理器在处理数字信号时具有更高的性能和效率。 用途…

JAVA程序如何打jar和war问题解决

背景: 近期研究一个代码审计工具 需要jar包 jar太多了 可以将jar 打成war包 首先看下程序目录结构 pom.xml文件内容 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"ht…

数据库后门是什么?我们要如何预防它的危害

数据库后门是黑客在数据库中安装的一种特殊程序或代码&#xff0c;可以绕过正常的认证和授权机制&#xff0c;从而获取数据库的敏感信息或者控制整个数据库。黑客可以通过各种方式安装后门&#xff0c;比如利用漏洞、钓鱼、社会工程学等。 数据库后门的危害主要体现在以下几个方…