Windows Docker笔记-简介摘录

Docker是一个开源的容器化平台,可以帮助开发人员将应用程序与其依赖项打包在一个独立的容器中,然后在任何安装的Docker的环境中快速、可靠地运行。

几个基本概念和优势:

1. 容器

容器是一个轻量级、独立的运行环境,包含了应用程序的代码、运行时环境和所有依赖项。容器可以快速创建、启动、停止和销毁,与操作系统和硬件解耦,提供了更好的灵活性和可移植性。

2. 镜像

镜像是一个只读的模板,包含了运行容器所需的文件系统、代码和依赖项。开发人员可以基于现有的镜像创建自定义的镜像,并通过镜像在不同的环境中部署应用程序。

3. 资源隔离

Docker使用Linux内核的命名空间和控制组(cgroups)功能,实现了对容器之间的资源隔离,使得应用程序在同一主机上运行时不互相影响。

4. 可移植性

Docker容器可以在任何支持Docker的平台上运行,包括云服务、虚拟机、物理机等。这意味着开发人员可以在开发环境中构建容器,然后在生产环境中轻松部署和运行。

5. 快速部署

Docker可以快速地创建、启动和停止容器,大大缩短了应用程序的部署时间。开发人员可以通过编写Dockerfile来定义应用程序的构建过程,然后使用Docker命令来构建和运行应用程序。

在应用程序开发中,Docker的实际应用包括:

1. 开发环境一致性

通过使用Docker容器,开发人员可以确保应用程序在不同的开发环境中具有一致的运行环境,避免由于环境变化导致的问题。

2. 快速构建和部署

开发人员可以使用Docker进行快速的应用程序构建和部署,从而加快开发周期,提高开发效率。

3. 弹性伸缩

Docker容器可以快速创建、停止和销毁,使得应用程序可以根据需求进行弹性伸缩,提高系统的可扩展性和稳定性。

4. 持续集成和交付

Docker可以与持续集成与交付(CI/CD)工具集成,实现自动化的构建、测试和部署流程,从而提高开发团队的效率和质量。

总之,Docker提供了一种轻量级、灵活、可移植的容器化解决方案,可以帮助开发人员更加高效地构建、部署和运行应用程序。


初学者听了上面这一堆,好像只有一个感觉就是docker很屌,其他其实没有太多的感受。这些概念都太抽象了,不是很好理解。下面来形象的理解一下。

其实就和现在大街上看见的连锁店一样的,比如,你喜欢吃华莱士的香辣鸡腿堡,你楼下恰好有一家华莱士分店,你进去就可以买到。过几天你到别的省份出差了,你又想吃华莱士的香辣鸡腿堡了,刚好你出差的地方也有一家华莱士分店,你又进去买了吃,而且味道一样,你爱死了。

这时有一个问题来了,是什么让你可以在任何时间,任何地点吃到你想吃的华莱士汉堡?答案就是:华莱士在很多地方都有连锁分店。而分店用的是统一的原料,统一的秘方,统一的制作方法,提供统一的服务。

那这里,华莱士的实体分店就是容器。分店中的原料、秘方等所有的东西的集合就是镜像。那么在一个地方开华莱士分店,就相当于docker环境。怎么样串起来呢?就是,一个地方,只要能开华莱士连锁分店,那么这个分店使用的原料、秘方等东西就是一样的,就可以做出口味一样的汉堡。你就可以在这个地方吃到口味一样的汉堡。这种连锁分店的运营模式就类似于docker技术。

资源隔离

虽然是连锁分店,但每个实体店都有各自的原料,运营人员,不会相互干扰。

可移植性

分店的意义在于,不管是在海上,沙漠,还是城市中,只要能开分店运营,那么就能产出汉堡,而且都是一样的口味。不会因为在不同地方,就无法生产汉堡,或者口味各不相同。

快速部署

华莱士是一个统一的品牌,装修风格,培训流程、服务质量都是标准化的,可以快速的实现运营服务。

以上为个人的入门理解,开发人员经常遇到本地开发环境运行正常,一旦部署到生产环境,就无法运行,不是缺运行时,就是缺少依赖,导致生产环境部署很麻烦。但是有了docker技术,就相当于开连锁店,原料,制作手法都是统一弄好的,直接运营就可以,不需要考虑这些环境问题。


下一章:Windows Docker笔记-安装docker

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

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

相关文章

【数据结构】_栈的结构与实现

目录 1. 栈的相关概念与结构 2. 栈的实现 2.1 栈实现的底层结构选择 2.2 Stack.h 2.3 Stack.c 2.4 Test_Stack.c 1. 栈的相关概念与结构 1、栈:一种特殊的线性表,只允许在固定的一端插入和删除数据; 允许进行数据插入和删除操作的一端…

mysql的cpu使用率100%问题排查

背景 线上mysql服务器经常性出现cpu使用率100%的告警, 因此整理一下排查该问题的常规流程。 1. 确认CPU占用来源 检查系统进程 使用 top 或 htop 命令,确认是否是 mysqld 进程导致CPU满载:top -c -p $(pgrep mysqld)2. 实时分析MySQL活动 …

某团面试题①—kudu读写流程

kudu 读写流程 前言 为什么会有kudu?先贴一个经典的图。 kudu诞生之前大数据的主要2种方式存储 静态数据 以hdfs引擎作为存储引擎,适用于高吞吐量的离线大数据分析场景,缺点是实现随机读写性能差,更新数据难 动态数据 以Hbase…

Deepseek本地部署指南:在linux服务器部署,在mac远程web-ui访问

1. 在Linux服务器上部署DeepSeek模型 要在 Linux 上通过 Ollama 安装和使用模型,您可以按照以下步骤进行操作: 步骤 1:安装 Ollama 安装 Ollama: 使用以下命令安装 Ollama: curl -sSfL https://ollama.com/download.…

go并发和并行

进程和线程 进程(Process)就是程序在操作系统中的一次执行过程,是系统进行资源分配和调度的基本单位,进程是一个动态概念,是程序在执行过程中分配和管理资源的基本单位,每一个进程都有一个自己的地址空间。…

element-ui rate 组件源码分享

评分组件,从三个方面分享: 1、页面结构。 2、组件属性。 3、组件方法。 一、页面结构: 主要有图标的、图标(默认或自定义图标)文字的、图标分数的。 二、属性。 2.1 value 2.2 max 最大分数。 2.3 disabled 是否只读 2.4 allow-half 是…

python学opencv|读取图像(五十六)使用cv2.GaussianBlur()函数实现图像像素高斯滤波处理

【1】引言 前序学习了均值滤波和中值滤波,对图像的滤波处理有了基础认知,相关文章链接为: python学opencv|读取图像(五十四)使用cv2.blur()函数实现图像像素均值处理-CSDN博客 python学opencv|读取图像(…

HIVE如何注册UDF函数

如果注册UDF函数的时候报了上面的错误,说明hdfs上传的路径不正确, 一定要用下面的命令 hadoop fs -put /tmp/hive/111.jar /user/hive/warehouse 一定要上传到上面路径,这样在创建函数时,引用下面的地址就可以创建成功

紧跟潮流,将 DeepSeek 集成到 VSCode

Visual Studio Code(简称 VSCode)是一款由微软开发的免费开源代码编辑器,自 2015 年发布以来,凭借其轻便、强大、且拥有丰富扩展生态的特点,迅速成为了全球开发者的首选工具。VSCode 支持多平台操作系统,包…

HAL库 Systick定时器 基于STM32F103EZT6 野火霸道,可做参考

目录 1.时钟选择(这里选择高速外部时钟) ​编辑 2.调试模式和时基源选择: 3.LED的GPIO配置 这里用板子的红灯PB5 4.工程配置 5.1ms的systick中断实现led闪烁 源码: 6.修改systick的中断频率 7.systick定时原理 SysTick 定时器的工作原理 中断触发机制 HAL_SYSTICK_Co…

DeepSeek与llama本地部署(含WebUI)

DeepSeek从2025年1月起开始火爆,成为全球最炙手可热的大模型,各大媒体争相报道。我们可以和文心一言一样去官网进行DeepSeek的使用,那如果有读者希望将大模型部署在本地应该怎么做呢?本篇文章将会教你如何在本地傻瓜式的部署我们的…

【重新认识C语言----文件管理篇】

目录 ​编辑 -----------------------------------------begin------------------------------------- 引言 1. 文件的基本概念 2. 文件指针 3. 文件的打开与关闭 3.1 打开文件 3.2 关闭文件 4. 文件的读写操作 4.1 读取文件 4.1.1 使用fgetc()读取文件 4.1.2 使用fg…

全面解析String类

一、String 类初相识 在 C 语言的世界里,字符串是以\0结尾的字符集合,为了方便操作,C 标准库提供了一系列str系列的库函数,如strcpy、strcat、strlen等。虽然这些库函数在一定程度上满足了我们对字符串的操作需求,但是…

pycharm 中的 Mark Directory As 的作用是什么?

文章目录 Mark Directory As 的作用PYTHONPATH 是什么PYTHONPATH 作用注意事项 Mark Directory As 的作用 可以查看官网:https://www.jetbrains.com/help/pycharm/project-structure-dialog.html#-9p9rve_3 我们这里以 Mark Directory As Sources 为例进行介绍。 这…

MySQL - 字段内分组

1、MySQL 5.7及之前版本 SELECT A.要显示的字段名称,FIRST_VALUE : A.分组字段名称,last :IF(FIRST_VALUE A.分组字段名称, last 1, 1 ) AS rn,FROM 表1 A,(SELECT last : 0, FIRST_VALUE : NULL ) BORDER BY A.排序字段例:SELECT A.DLR_CODE,A.VAILD_CARD_NO,A.L…

瞬态分析中的时域分析与频域分析:原理、对比与应用指南

目录 一、核心概念区分 二、时域分析:时间维度直接求解 1. 基本原理 2. 关键特点 3. 典型算法 4. 应用案例 三、频域分析:频率维度的等效映射 1. 基本原理 2. 关键特点 3. 典型方法 4. 应用案例 四、对比与选择依据 1. 方法论对比 2. 工程…

【DeepSeek】DeepSeek小模型蒸馏与本地部署深度解析DeepSeek小模型蒸馏与本地部署深度解析

一、引言与背景 在人工智能领域,大型语言模型(LLM)如DeepSeek以其卓越的自然语言理解和生成能力,推动了众多应用场景的发展。然而,大型模型的高昂计算和存储成本,以及潜在的数据隐私风险,限制了…

安卓/ios脚本开发按键精灵经验小分享

1. 程序的切换 我们经常碰到这样的需求:打开最近的应用列表,选取我们想要的程序。但是每个手机为了自己的风格,样式都有区别,甚至连列表的滑动方向都不一样,我们很难通过模拟操作来识别点击,那么我们做的只…

camera光心检测算法

1.概要 光心检测算法,基于opencv c实现,便于模组厂快速集成到软件工具中,适用于camera模组厂算法评估组装制程镜头与sensor的偏心程度,便于工程师了解制程的问题找出改善方向。 2.技术介绍 下图为camera模组厂抓取的bayer-raw经过…

OpenCV:特征检测总结

目录 一、什么是特征检测? 二、OpenCV 中的常见特征检测方法 1. Harris 角点检测 2. Shi-Tomasi 角点检测 3. Canny 边缘检测 4. SIFT(尺度不变特征变换) 5. ORB 三、特征检测的应用场景 1. 图像匹配 2. 运动检测 3. 自动驾驶 4.…