Docker 介绍|学习笔记

简介: 快速学习 Docker 介绍

开发者学堂课程【深入解析 Docker 容器化技术Docker 介绍】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/659/detail/10928


Docker 介绍

 

内容介绍

一、 介绍 dokcer

二、 Container 与 vm 区别

 

一、介绍 docker

上一个章节讲了虚拟化,它作用是充分利用物理资源,所使用的产品 VMware workstation,这个过程当中其实还是存在一些问题,本地机器是 Win10 操作系统,并且在这个机器上可以安装软件的。安装 VMware workstation,安装好之后可以安装其他多种操作系统,但是这些所有的操作系统不一定能同时启动,因为每一个都是一个操作系统,操作系统在运行的时候需要消耗系统资源的,如果本地机器配置不够高,那么肯定是不能同时运行的。

存在一个问题,这台虚拟机虽然能够资源的充分利用,但是不能最大化的利用资源。现在希望这台 win10的机器,能够运行十个二十个这样的操作系统。针对这个场景,现在企业里流行的解决方案是就是今天所学习的 Docker(虚拟化容器),在这个里面其实有两个概念一个是虚拟化另一个是容器,如何去理解容器这两个字。简单举个例子,比如正在运行的 Win10 OS就是一个容器,在容器当中部署、安装所需要的软件,docker 虚拟化容器与架构中操作层的虚拟化是类似的。

image.png

image.png

把图中部分认为是三个容器,在这个过程当中可以虚拟出多种容器,数量可以有十几个甚至上百个,并且这些容器可以同时运行。在这个过程当中 docker 所占用的系统资源极少。举一个生活场景中的例子,假设你是一位开发商,现在拥有一块地,这块地的大小是固定的,可以盖多种楼房,可以建别墅、商品房。不管是哪种,占地面积是固定的,所提供的硬件资源是固定的。不论是哪种,最终需求是出租出去,来赚取更多的钱财。就会选择盖商品房,占地面积固定的。这里的商品房就相当于虚拟机,但是盖商品房并不是最佳的方案。如果想住更多的人,隔断可以让居住的人更多,就可以赚到更多的钱财,相同的资源,赚更多的钱。而这里的隔断就相当于 docker 容器。通过这个例子很形象的让大家理解 docker 做的事情。

 

、Container 与 vm 区别

物理机:

image.png

虚拟机:

image.png

但是不是最终的方案

容器:最大化的利用资源

image.png

通过上面这三张抽象图,我们大概可以通过类比概括出:容器虚拟化的是操作系统而不是硬件, 容器之间是共享同一套操作系统资源的。虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统。

容器和虚拟机具有相似的资源隔离和分配优势,但功能有所不同,因为容器虚拟化的是操作系统,而不是硬件因此容器更容易移植,效率也更高。

相关文章
|
3月前
|
Kubernetes Ubuntu Linux
docker学习笔记
docker学习笔记
52 0
|
26天前
|
安全 网络安全 开发者
Docker学习笔记(一):Docker命令总结
本文介绍了Docker的基本概念、优点以及常用命令。Docker是一个开源的应用容器引擎,它通过容器打包应用程序及其依赖项,实现快速部署和迁移。主要优点包括轻量级、可移植性、易于管理、安全性和开源性。文章还区分了镜像和容器的概念,并提供了构建镜像、查看容器、运行容器、停止和删除容器等常用Docker命令的示例。
123 0
|
2月前
|
Docker Windows Python
Windows-Docker学习笔记(一)
本文介绍了Windows环境下Docker的安装与使用方法。首先通过链接下载Windows版本的Docker,然后按步骤配置:启用Windows功能、设置默认WSL版本为2,并检查Docker及其组件是否正常工作。接着详细列出了Docker的基础命令及其用法,包括搜索、下载镜像、管理容器等。同时介绍了Dockerfile的编写方法及其构建过程,以及docker-compose.yml文件的用途。最后提供了运行和管理容器的具体示例。
Windows-Docker学习笔记(一)
|
3月前
|
前端开发 jenkins 持续交付
jenkins学习笔记之二十:docker in docker运行pipeline
jenkins学习笔记之二十:docker in docker运行pipeline
|
3月前
|
jenkins Java 持续交付
jenkins学习笔记之十九:Docker安装jenkins master及动、静态配置slave
jenkins学习笔记之十九:Docker安装jenkins master及动、静态配置slave
|
6月前
|
安全 Linux Docker
Ubantu docker学习笔记(六)容器数据卷
Ubantu docker学习笔记(六)容器数据卷
Ubantu docker学习笔记(六)容器数据卷
|
6月前
|
Kubernetes 调度 Docker
Ubantu docker学习笔记(十一)k8s基本操作
Ubantu docker学习笔记(十一)k8s基本操作
|
6月前
|
Prometheus 监控 Cloud Native
Ubantu docker学习笔记(九)容器监控 自带的监控+sysdig+scope+cAdvisor+prometheus
Ubantu docker学习笔记(九)容器监控 自带的监控+sysdig+scope+cAdvisor+prometheus
|
6月前
|
存储 应用服务中间件 nginx
Ubantu docker学习笔记(八)私有仓库
Ubantu docker学习笔记(八)私有仓库
|
6月前
|
网络协议 Docker 容器
Ubantu docker学习笔记(七)容器网络
Ubantu docker学习笔记(七)容器网络
下一篇
无影云桌面