您的位置:首页 > 博客中心 > 互联网 >

Docker学习笔记(一)什么是Docker

时间:2022-05-01 09:11

Docker学习笔记(一)什么是Docker

 

Docker:容器技术是虚拟化技术的一种,是操作系统的虚拟化。 

传统硬件虚拟化:虚拟硬件,事先分配资源,在虚拟的硬件上安装操作系统,虚拟机启动起来以后资源就会被完全占用。

操作系统虚拟化:docker是操作系统虚拟化,借助操作系统内核特性(命名空间、cgroups)实现,不需要模拟硬件行为,不需要安装操作系统。

 

优点:

  硬件虚拟化需要安装操作系统占用空间大。

  硬件虚拟化需要模拟硬件系统行为,内存和cpu消耗更大。 

缺点:

  容器进程崩溃,可能影响宿主机进程。

     

举例:128G内存,模拟100个硬件虚拟机,1000个docker容器。

以上可知,同样配置的的服务器,使用容器技术比使用虚拟机可以提供更多的服务能力,服务更多的用户。

 

最初,容器技术比较复杂,依赖Linux操作系统内核特性,不易安装和实现自动化,不易于使用。

Docker的出现就是为了改变这一切的。

 

Docker由dotCloud公司(现在的Docker公司)2013年初发布,基于apache2.0的开源授权协议。

Docker使用go语言编写,Github地址:

Docker文档:

 

Docker特别之处,在虚拟化的容器执行环境中,增加了一个应用程序部署引擎,提供轻量快速的环境,

能够运行开发者程序,能够方便高效的将应用程序部署到测试环境、生产环境。

 

Docker能够将应用程序自动部署到容器。

 

Docker的目标

  • 简单轻量的建模方式
  • 职责的逻辑分离:开发人员关心容器中的运行程序,运维人员只需要关心如何管理容器。
  • 快速高效的开发生命周期:在容器中开发,以容器方式交付和分发,开发、测试、生产环境一致,避免了额外的开销。
  • 鼓励使用面向服务的架构:单个容器只运行一个应用程序或进程,扩展调试简单,高内聚、低耦合和单一任务。

 

Docker的使用场景

  • 使用Docker容器开发、测试、部署服务
  • 构建多用户的平台即服务paas基础设施
  • 提供软件即服务saas的应用程序

 

Docker的基本组成:

Docker客户端:本地或远程

Docker服务端:守护进程Docker Daemon

 

Docker镜像:打包阶段,层叠的只读文件系统,引导-》root(ubuntu、centos)-》...

Docker容器:执行阶段,容器通过镜像启动,在可写层复制写入,屏蔽只读文件。

Docker仓库:docker registry仓库,

  公有仓库Docker hub,

  私有仓库。

 

本类排行

今日推荐

热门手游