Docker(一)-认识Docker

1.docker理念

Docker是基于Go语言实现的云开源项目。
Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装,分发,部署,运行等生命周期的管理,使用户的应用及其运行环境能够做到”一次镜像,处处运行“。避免因为配置环境不一样,版本缺失,第三方引入包的依赖不同导致的各种发布上线的问题。

2.Docker与传统虚拟化方式的不同

1.传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需应用进程。
2.容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核且也没有进行硬件虚拟。因此容器比传统虚拟机更为轻便。
3.每个容器之间互相隔离,每个容器有自己的文件系统,容器之间进程不会相互影响,能区分计算资源。

3.Docker优势

1.更快速的应用交付和部署。
2.更便捷的升级和扩缩容。
3.更简单的系统运维。
4.更高效的计算资源利用。

4.Docker的基本组成(三要素)

以java为例:镜像就是java类,容器就是通过类模板new出来的一个个实例对象,仓库就是存放镜像的地方。

在这里插入图片描述

1.镜像(image):
一个只读模板。镜像可以用来创建Docker容器,一个镜像可以创建多个容器。 
2.容器(Container):
2.1:面向对象角度:
Docker利用容器独立运行的一个或一组应用,应用程序或服务运行在容器里面,容器就类似于一个虚拟化的运行环境,
容器是用镜像创建的运行实例。就像java中的类和实例对象一样,镜像是静态的定义,容器时镜像运行时的实体。
容器为镜像提供了一个标准的和隔离的运行环境,它可以被启动,开始,停止,删除。每个容器都是相互隔离的、保证安全的平台。
2.2:镜像容器角度:
可以把容器看做是一个简易版的Linux环境(包括root用户权限,进程空间,用户空间和网络空间等)和运行在其中的应用程序。
3.仓库(repository):
集中存放镜像文件的场所(Docker Hub)。
总结:
Docker本身是一个容器运行载体或称之为管理引擎。我们把应用程序和配置依赖打包好形成一个可交付的运行环境。
这个打包好的运行环境就是image镜像文件。只有通过这个镜像文件才能生成Docker容器实例(类似java中new出来的对象)。
image(镜像)文件可以看作是容器的模板。Docker根据image(镜像)文件生成容器的实例。同一个image(镜像)文件可以生成多个同时运行的容器实例。

5.Docker工作原理

Docker是一个Client-Server结构的系统,Docker守护进程运行在主机上,然后通过Socket连接从客户端访问,
守护进程从客户端接收命令并管理运行在主机上的容器。容器是一个运行时环境。
以Mysql举例:客户端比如 小海豚。连上后台守护进程(mysql服务),进行mysql各种表操作。Docker:通过客户端连接后台守护进程(docker引擎),操作redis,mysql等镜像文件形成容器实例各自运行。 

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

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

相关文章

jenkins使用注意问题

1.在编写流水线时并不知道当前处在哪个目录,导致名使用不当,以及文件位置不清楚 流水线任务默认路径是,test4_mvn为jenkins任务名 [Pipeline] sh (hide)pwd /var/jenkins_home/workspace/test4_mvn maven任务也是,看来是一样的…

CV每日论文--2024.6.14

1、ICE-G: Image Conditional Editing of 3D Gaussian Splats 中文标题:ICE-G:3D 高斯斑点的图像条件编辑 简介:近年来,出现了许多技术来创建高质量的3D资产和场景。然而,当涉及到这些3D对象的编辑时,现有方法要么速度慢、要么牺牲质量,要么…

数组(C语言)(详细过程!!!)

目录 数组的概念 一维数组 sizeof计算数组元素个数 二维数组 C99中的变⻓数组 数组的概念 数组是⼀组相同类型元素的集合。 数组分为⼀维数组和多维数组,多维数组⼀般比较多见的是二维数组。 从这个概念中我们就可以发现2个有价值的信息:(1)数…

flask_sqlalchemy时间缓存导致datetime.now()时间不变问题

问题是这样的,项目在本地没什么问题,但是部署到服务器过一阵子发现,这个时间会在某一刻定死不变。 重启uwsgi后,发现第一条数据更新到了目前最新时间,过了一会儿再次发送也变了时间,但是再过几分钟再发就会…

软件测试--Mysql快速入门

文章目录 软件测试-mysql快速入门sql主要划分mysql常用的数据类型sql基本操作常用字段的约束:连接查询mysql内置函数存储过程视图事务索引 软件测试-mysql快速入门 sql主要划分 sql语言主要分为: DQL:数据查询语言,用于对数据进…

基于Verilog表达的FSM状态机

基于Verilog表达的FSM状态机 1 FSM1.1 Intro1.2 Why FSM?1.3 How to do 在这里聚焦基于Verilog的三段式状态机编程; 1 FSM 1.1 Intro 状态机是一种代码实现功能的范式;一切皆可状态机; 状态机编程四要素:– 1.状态State&#…

通用大模型与垂直大模型:双轨并进的人工智能未来

在人工智能(AI)的浩瀚宇宙中,大模型以其强大的学习能力和广泛的适用性,正逐步成为推动技术进步和产业革新的核心动力。在这股浪潮中,通用大模型与垂直大模型如同两颗璀璨的星辰,各自散发着独特的光芒,共同照亮了AI发展…

STL入门指南:从容器到算法的完美结合

目录 ​编辑 一、什么是STL 二、STL的版本 三、STL的六大组件 1. 容器(Containers): 2. 算法(Algorithms): 3. 迭代器(Iterators): 4. 仿函数(Functo…

中国算力基础设施“第一阵营”变局?

2024年6月IDC最新数据显示,2024年第一季度,联想服务器跃升至中国市场份额第三位。中国算力基础设施“第一阵营”正生变局。 在去年服务器本地化品牌联想问天发布之后,联想就发出了向国内服务器市场冲锋的信号。如今仅一年,就进入…

工业4.0下的PLC进化论:ARMxy计算机如何重塑自动化

智能物流系统的高效与精准成为企业竞争力的关键。在这个背景下,传统的PLC系统因其固有的局限性,如扩展性差、系统封闭等,开始显得力不从心。ARMxy工业计算机作为新一代的PLC替代方案,凭借其低功耗、高性能以及高度的灵活性&#x…

Android Studio历史版本

android studio的历史版本

自然语言处理领域的重大挑战:解码器 Transformer 的局限性

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

本地Zabbix开源监控系统安装内网穿透实现远程访问详细教程

文章目录 前言1. Linux 局域网访问Zabbix2. Linux 安装cpolar3. 配置Zabbix公网访问地址4. 公网远程访问Zabbix5. 固定Zabbix公网地址 💡推荐 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【…

【机器学习】机器学习赋能医疗健康:从诊断到治疗的智能化革命

📝个人主页🌹:Eternity._ 🌹🌹期待您的关注 🌹🌹 ❀目录 📒1. 引言📙2. 机器学习在疾病诊断中的应用🧩医学影像分析:从X光到3D成像带代码&#x1…

我的考研经历

当我写下这篇文章时,我已经从考研 的失败中走出来了,考研的整个过程都写在博客日志里面了,在整理并阅读考研的日志时,想写下一篇总结,也算是为了更好的吸取教训。 前期日志模板:时间安排的还算紧凑&#x…

vivado HW_VIO

描述 虚拟输入/输出(VIO)调试核心hw_VIO可以监视和驱动内部 在编程的XilinxFPGA上实时显示信号。在没有物理访问的情况下 目标硬件,可以使用此调试功能来驱动和监视 存在于物理设备上。 VIO核心具有硬件探测器hw_probe对象,用于监…

DeepSpeed Monitoring Comm. Logging

Monitoring 支持多种后端:Tensorboard、WandB、Comet、CSV文件; TensorBoard例子: 自动监控:DeepSpeed自动把重要metric记录下来。只需在配置文件里enable相应的看板后端即可: {"tensorboard": {"enabl…

JVM 类加载器的工作原理

JVM 类加载器的工作原理 类加载器(ClassLoader)是一个用于加载类文件的子系统,负责将字节码文件(.class 文件)加载到 JVM 中。Java 类加载器允许 Java 应用程序在运行时动态地加载、链接和初始化类。 2. 类加载器的工…

机器学习与数据挖掘知识点总结(二)分类算法

目录 1、什么是数据挖掘 2、为什么要有数据挖掘 3、数据挖掘用在分类任务中的算法 朴素贝叶斯算法 svm支持向量机算法 PCA主成分分析算法 k-means算法 决策树 1、什么是数据挖掘 数据挖掘是从大量数据中发现隐藏在其中的模式、关系和规律的过程。它利用统计学、机器学…

[Shell编程学习路线]——深入理解Shell编程中的变量(理论与实例)

🏡作者主页:点击! 🛠️Shell编程专栏:点击! ⏰️创作时间:2024年6月12日11点40分 🀄️文章质量:95分 文章目录 ————前言———— 1 自定义变量 🫠…