Docker笔记1 | Docker学习和简介

news/2024/7/24 8:09:21 标签: docker, 笔记, 学习

1 | Docker学习和简介

  • 1 学习来源
  • 2 官方学习资源
  • 3 Docker简介
    • 3.1 Docker是什么?
    • 3.2 Docker应用场景
    • 3.3 Docker架构
    • 3.3 Docker的优势
    • 3.3 与传统虚拟机的区别

1 学习来源

  • 本系列笔记学习主要参考书籍《Docker-从入门到实践》以及结合官网的教程,仅作为个人学习使用;
  • 推荐大家阅读此书,感谢作者的书籍,学到了很多。

2 官方学习资源

  • Docker 官方主页:https://www.docker.com
  • Docker 官方博客:https://blog.docker.com/
  • Docker 官方文档:https://docs.docker.com/
  • Docker Store:https://store.docker.com
  • Docker Cloud:https://cloud.docker.com
  • Docker Hub:https://hub.docker.com
  • Docker 的源代码仓库:https://github.com/moby/moby
  • Docker 发布版本历史:https://docs.docker.com/release-notes/
  • Docker 常见问题:https://docs.docker.com/engine/faq/
  • Docker 远端应用 API:https://docs.docker.com/develop/sdk/

3 Docker简介

3.1 Docker是什么?

  • Docker 开源的应用容器引擎,使用 Go 语言 进行开发实现;
  • 基于 Linux 内核的cgroupnamespace,以及 AUFS 类的 Union FS 等技术,对进程进行封装隔离;
  • 属于 操作系统层面的虚拟化技术;
  • 由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器;
  • 使用客户端-服务器 (C/S) 架构模式,使用远程 API 来管理和创建 Docker 容器;
  • 是实现容器技术的一种工具;
  • 还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。

Docker 在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔
离等等,极大的简化了容器的创建和维护。使得 Docker 技术比虚拟机技术更为轻
便、快捷

3.2 Docker应用场景

  • Web 应用的自动化打包和发布;
  • 自动化测试和持续集成、发布;
  • 组建微服务架构,通过多个容器,一台机器可以跑多个服务,因此在本机可以模拟出微服务架构。

3.3 Docker架构

  • 架构图:

在这里插入图片描述

架构图包含:客户端Client、Docker daemon、仓库Registry;
输入命令的工具称之为客户端Client,当在客户端输入命令时,命令会发送到docker所在主机的daemon进程,由该进程执行命令。当执行的是创建容器的命令时,如果对应的镜像不存在于本地,那么daemon会向远程docker仓库请求下载镜像,等镜像下载到本地后在创建容器。

  • 命令图:

在这里插入图片描述

3.3 Docker的优势

优势说明
更高效的利用系统资源不需要进行硬件虚拟以及运行完整操作系统等额外开销
更快速的启动时间运行于宿主内核,无需启动完整的操作系统
一致的运行环境提供了除内核外完整的运行时环境,确保了应用运行环境一致性
持续交付和部署定制应用镜像来实现持续集成、持续交付、部署。
更轻松的迁移在多平台上运行
更轻松的维护和扩展分层存储以及镜像的技术

3.3 与传统虚拟机的区别

在这里插入图片描述

特性容器虚拟机
启动秒级分钟级
硬盘使用一般为 MB一般为 GB
性能接近原生弱于
系统支持量单机支持上千个容器一般几十个

http://www.niftyadmin.cn/n/232646.html

相关文章

【MYSQL】表的增删改查(基础)

文章目录🌷 1. 新增(Create)⭐️ 1.1 单行行数据 指定列插入⭐️ 1.2 多行数据 指定列插入🌷 2. 查询(Retrieve)⭐️ 2.1 全列查询⭐️ 2.2 指定列查询⭐️ 2.3 查询字段为表达式⭐️ 2.4 别名⭐️ 2.5 去…

GROUP BY 与 聚合函数、 HAVING 与 ORDER BY-MySQL数据库 - 分组选择数据(头歌实践教学平台)

文章目的初衷是希望学习笔记分享给更多的伙伴,并无盈利目的,尊重版权,如有侵犯,请官方工作人员联系博主谢谢。 目录 第1关:GROUP BY 与 聚合函数 任务描述 相关知识 GROUP BY与聚合函数的使用 编程要求 第2关&…

智慧园区综合管理平台开发基本功能有哪些?

随着智慧城市建设与信息化发展,园区管理也需要更加智能便捷化,于是智慧园区管理系统开发应运而生。智慧园区综合管理系统就是利用物联网、大数据等技术工具,顺应产业园区升级发展需求,实现园区环境、设备、安全、基础管理、资源服…

在新电脑上重启自己的django+vue项目遇到的数据库和Nodejs问题

数据库问题 今天在新电脑上重启自己备份的项目文件,迁移数据库的时候一直出现这个问题,运行代码也是这个问题。很奇怪,明明是不出错的代码做的备份怎么会出问题? 找了一下午,终于晚上把问题解决了。 问题 1、首先是这个问题 2、再往上追溯,发现是这里的问题 3、在原…

算法训练day2:哈希表

哈希表理论基础 哈希表是根据关键码的值而直接进行访问的数据结构。 当我们遇到了要快速判断一个元素是否出现集合里的时候,就要考虑哈希法。 但是哈希法也是牺牲了空间换取了时间,因为我们要使用额外的数组,set或者是map来存放数据&#…

nssctf web 入门(5)

这里通过nssctf的题单web安全入门来写,会按照题单详细解释每题。题单在NSSCTF中。 想入门ctfweb的可以看这个系列,之后会一直出这个题单的解析,题目一共有28题,打算写10篇。 目录 [鹤城杯 2021]EasyP [SWPUCTF 2021 新生赛]eas…

接口面试题

保证产品质量 1、编写测试用例,并且加强对应的一个评审,比如说有内部评审、外部评审、通过多方位的评审来保证我们的测试依据是完整的,并且是充分的。 2、加强对需求的理解,当开发和测试,对需求理解有不一致的时候&…

Java实战开发中的Map集合KEY

好,让我们来仔细看看自定义的k类型。 如果你不太明白是什么意思,让我们来看看这个例子。 在使用我们的Map集合时,任意的数据类型都可以成为我们的k,也就是说可以成为我们所谓的k类型。比如,我们现在来看一个例子。假…