Docker学习笔记(一):入门篇,Docker概述、基本组成等,对Docker有一个初步的认识

这篇具有很好参考价值的文章主要介绍了Docker学习笔记(一):入门篇,Docker概述、基本组成等,对Docker有一个初步的认识。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

记录时间 [2024-4-5]


在先前的文章中,笔者进行了Windows系统下YOLOv8模型的简单测试,并由此引发思考:是否能尝试将此模型运行在Linux中呢?又或者,运行在Docker中。关于Docker的学习就这么展开了。

本文便是有关Docker入门的开篇之作,进行Docker概述,期待读者能够从一无所知到对Docker有一个初步的认识

文章为零基础学习Docker做了一些准备:

  • Docker学习视频(狂神说系列)
  • Docker官方文档(官方文档超级详细)
  • Docker远程仓库(相当于镜像商店)

Docker 概述


那么,Docker为什么会出现呢?

相信大家对于环境这个词一定很熟悉吧,开发的项目需要在特定的环境中运行,而有些环境的配置极其复杂,给运维造成一定的困难。而Docker,就是解决问题的关键所在。

Docker是一个开源的应用容器引擎,基于Go语言开发,其核心思想在于隔离,即:将项目+它所需要的运行环境打包安装在各自的箱子里,每个箱子互相隔离。

Docker通过隔离机制,能极大提升服务器的利用率。

Docker广泛运用于开发和运维,能很好地解决环境搭建的麻烦,避免多个应用端口冲突。通过下载发布的镜像,几乎能实现一套流程完成“开发、打包、部署、上线”。


Docker 历史


2010 年,Solomon Hykes和朋友们在美国旧金山成立了一家公司dotCloud,最初主要提供基于LXC (Linux Container)PaaS云计算服务。他们将自己的技术,即容器化技术,命名为Docker

然而,在诞生之初,Docker并没有引起行业的注意,直到 2013 年Docker开源,开源当月发布了Docker 0.1版本,此后每个月Docker都会更新一个版本。后来,越来越多的使用者发现了它的优点,于是它火了。

2014 年 6 月 9 日,Docker 1.0版本正式发布!


Docker 优势(对比虚拟机)


Docker为什么会这么火?因为它十分轻巧。

纵观虚拟化技术的发展,在Docker容器技术问世前,虚拟机技术的使用占主导。在Windows操作系统中安装Vmware软件,再由该软件虚拟出一台或多台电脑(Linux Centos原生镜像),这些虚拟出来的电脑即为虚拟机。而一台虚拟机的内存往往占好几个G,运行起来非常笨重,更何况实现隔离需要开启多个虚拟机。


如图,图片来源,VM会模拟出一台完整的电脑,造成了资源和内存的浪费。而Docker每个项目运行在单独的容器里,且容器直接运行在OS之上。容器化技术不是模拟一个完整的操作系统。

Docker的抽象层比VM少,运行比VM快。

Docker学习笔记(一):入门篇,Docker概述、基本组成等,对Docker有一个初步的认识,Docker 笔记,docker,容器,运维,linux,笔记


虚拟机技术缺点:

  • 资源占用多
  • 冗余步骤多
  • 启动很慢

Docker和虚拟机技术的不同之处:

  • 传统虚拟机,虚拟出一套硬件,运行一个完整的操作系统,然后在这个系统上安装和运行软件。
  • 容器内的应用直接运行在宿主机的内核,容器没有自己的内核,也没有虚拟硬件,因此十分轻巧。
  • 不同容器之间互相隔离,每个容器内都有一个属于自己的文件系统,互不影响,因而安全。

虚拟化技术 镜像 实现隔离 内存 启动时间
VM Linux Centos原生镜像(一个电脑) 需要开启多个虚拟机 G级别 分钟级
Docker 镜像(最核心的环境) 运行镜像即可 M级别 秒级

我们将容器技术虚拟机技术进行对比,不难看出,Docker容器技术的优势明显。可以说,开发人员需要掌握这项技术。


Docker 作用(能干嘛)

DevOps(开发、运维)


更快速的应用交付和部署

  • 传统:一堆帮助文档,安装程序;
  • Docker:打包镜像发布测试,一键运行。

更便捷的升级和扩缩容

  • 使用Docker之后,可以将应用部署到多个容器中;
  • 一个服务器上能运行多个容器,容器之间可以交互;
  • 方便应用升级和扩展。

更简单的系统运维

  • 保证开发/测试环境的高度一致。

更高效的资源利用

  • Docker是内核级别的虚拟化,在一个物理机上可以运行多个容器实例,服务器的性能可以被压榨到极致。

Docker 基本组成


如图(图片来源网络),Docker客户端、服务器,和远程仓库三部分组成,在Docker守护进程中包含镜像和容器,一个镜像可以运行在多个不同的容器中。基本过程:客户端启动Docker服务,去远程仓库拉取镜像,然后运行在容器中。


Docker学习笔记(一):入门篇,Docker概述、基本组成等,对Docker有一个初步的认识,Docker 笔记,docker,容器,运维,linux,笔记


镜像image

  • Docker镜像类似于模板,通过这个模板可以创建容器服务。如:tomcat镜像 ==> run ==> tomcat01容器(容器提供服务)
  • 通过这个镜像可以创建多个容器,最终服务/项目运行在容器中。

容器container

  • 容器相当于一个简易的Linux系统;
  • 通过镜像来创建容器,在容器中可独立运行一个/一组应用;
  • 基本命令:启动/停止/删除…

仓库repository

  • 仓库是存放镜像的地方,分为公有仓库和私有仓库;
  • 默认是国外的:Docker Hub
  • 配置镜像加速:阿里云容器服务。

总结


本文进行了Docker概述,介绍其历史、优势、作用,以及基本组成。通过此,相信大家对Docker有了一个初步的认识。接下来就进入Docker的安装和基本命令使用了。


一些参考资料


狂神说系列Docker教程:https://www.bilibili.com/video/BV1og4y1q7M4/

Docker官网:https://www.docker.com/

Docker官方文档:https://docs.docker.com/engine/install/centos/

Docker远程仓库:https://hub.docker.com/文章来源地址https://www.toymoban.com/news/detail-848028.html

到了这里,关于Docker学习笔记(一):入门篇,Docker概述、基本组成等,对Docker有一个初步的认识的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 三、Docker的基本组成和常用命令(一)

    镜像(image) Docker 镜像(Image)就是一个只读的模板。镜像可以用来创建 Docker 容器,一个镜像可以创建多个容器。 docker 面向对象 容器 对象 镜像 类 容器(container) Docker 利用容器(Container)独立运行的一个或一组应用。容器是用镜像创建的运行实例。它可以被启动、开始、停止

    2024年02月10日
    浏览(38)
  • 【云原生】Docker的初步认识,安装与基本操作

    Docker是一个开源的 应用容器引擎 ,基于go语言开发并遵循了apache2.0协议开源。 Docker是在Linux容器里运行应用的开源工具,是一种轻量级的“虚拟机”。 Docker 的容器技术可以在一台主机上轻松为任何应用创建一个轻量级的、可移植的、自给自足的容器。 Docker的Logo设计为蓝色

    2024年02月16日
    浏览(57)
  • Hadoop学习指南:探索大数据时代的重要组成——Hadoop概述

    在当今大数据时代,处理海量数据成为了一项关键任务。Hadoop作为一种开源的分布式计算框架,为大规模数据处理和存储提供了强大的解决方案。本文将介绍Hadoop的组成和其在大数据处理中的重要作用,让我们一同踏上学习Hadoop的旅程。 1)Hadoop是一个由Apache基金会所开发的

    2024年02月14日
    浏览(44)
  • stata学习笔记(一)stata入门与基本操作

    这里开个新坑,主题有关stata使用以及定量分析入门,主要内容来自于之前与之后的课程学习、作业以及资料查询整理,主要目的是对个人学习过程的一个记录,方便日后回顾。 方法1:点击文件选项,选择导入,根据数据类型选择即可; 方法2::点击进入数据编辑器界面,点

    2024年02月21日
    浏览(41)
  • Docker基础入门:Docker起源、组成、安装、及常用命令

    💖The Begin💖点点关注,收藏不迷路💖 Docker起源于2013年,由Docker公司(前身为dotCloud公司)创造和推广。它是一个开源的容器化平台,旨在简化应用程序的部署和管理。 在过去,应用程序的部署和运行环境往往存在着依赖关系和配置差异,这导致了许多问题,例如运行环境

    2024年02月10日
    浏览(37)
  • Docker学习笔记 - 极简极入门级

    Docker主打一个“极小成本”的虚拟环境的一键部署,使用少量的系统资源占用实现项目在不同宿主机上的无缝迁移。 下面两图来自Bilibili@BV1HP4118797 命令 说明 文档地址 docker pull 拉取镜像 pull docker push 推送镜像到DockerRegistry push docker images 查看本地镜像 images docker rmi 删除本地镜

    2024年02月07日
    浏览(32)
  • 黑马程序员Docker快速入门到项目部署(学习笔记)

    目录 一、Docker简介 二、安装Docker 2.1、卸载旧版 2.2、配置Docker的yum库 2.3、安装Docker 2.4、启动和校验 2.5、配置镜像加速 2.5.1、注册阿里云账号 2.5.2、开通镜像服务 2.5.3、配置镜像加速 三、快速入门 3.1、部署MYSQL 3.2、命令解读 四、Docker基础 4.1、常见命令 4.1.1、命令介绍 4.1

    2024年01月25日
    浏览(51)
  • PaddleOCR学习笔记2-初步识别服务

    今天初步实现了网页,上传图片,识别显示结果到页面的服务。后续再完善。 采用flask + paddleocr+ bootstrap快速搭建OCR识别服务。 代码结构如下: 模板页面代码文件如下: upload.html : result.html :  主要视图代码文件如下: 启动flask应用,测试结果如下:

    2024年02月09日
    浏览(39)
  • 【UnityShader入门精要学习笔记】第五章(1)年轻人的第一个Shader

    本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 + 个人批注 项目源码 一堆新手会犯的错误 潜在的太监断更,有始无终 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 现在我们将学习如何编写一个 顶点/片元着色器 一个Unity Shader的

    2024年02月20日
    浏览(45)
  • matlab学习指南(1):matlab初步入门详细介绍

    欢迎来到馒头侠的博客,该类目主要讲数学建模的知识,大家一起学习,联系最后的横幅! 喜欢的朋友可以关注下,私信下次更新不迷路! 资源链接:点击这里获取众多数模资料、论文模板latex和word、学习书籍、思路精讲 广泛应用的数学软件有: Matlab、Mathematica、Maple、s

    2024年02月16日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包