Docker学习(一):什么是Docker?

一、什么是Docker?

  Docker 是一个基于Go语言实现的开源应用容器项目,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux机器上,也可以实现虚拟化。

  Docker的构想是要实现对应用组件级别的“一次封装、到处运行”,这里的应用组件,既可以是一个Web应用、一个编译环境,也可以是一套数据库平台服务,甚至是一个操作系统或集群。

二、Docker容器的诞生

  Docker是目前最流行的容器化技术之一,Docker的诞生在Linxu容器(LXC)之上的。

  在LXC的基础上,Docker进一步优化了容器的使用体验。首先,Docker提供了各种容器管理工具,让用户无需关注底层的操作,更加简明地管理和使用容器;其次,Docker引入了分层文件系统构建和高效的镜像机制,降低了迁移难度,极大地改善了用户体验。

三、为什么要使用Docker?

1、更高效地利用系统资源

  Docker容器不需要进行硬件虚拟化,没有虚拟机管理应用和虚拟机操作系统的开销,而是直接复用本机的操作系统,对系统资源的利用更高效。无论是应用执行速度、内存损耗或者文件存储速度,都要比传统虚拟机技术更高 效。

2、轻松地应用迁移

  在云时代,开发者创建的应用必须要能够很方便地在网络上传播,也就是必须脱离底层物理硬件的限制。

  举个简单的例子,以传统方式进行应用迁移时,必须保证新宿主机与原来的机器环境一致,就需要搭建环境、部署项目、调试等一系列操作,费时费力。而Docker通过容器来打包应用、使应用和机器环境解耦,迁移的时候只需要在新的服务器上启动容器即可。

3、更快的启动时间

  传统的虚拟机技术启动应用服务往往需要数分钟,而 Docker 容器应用,由于直接运行于宿主 内核,无需启动完整的操作系统,因此可以做到秒级、甚至毫秒级的启动时间。大大的节约 了开发、测试、部署的时间。

4、一致的运行环境

  使用Docker,开发人员可以使用镜像来快速构建一套标准的开发环境;而测试、生产环境完全可以复用开发环境,达到一致的运行环境,减少因环境不一致产生的Bug因素。Docker可以快速创建、删除容器,实现快速迭代,节约开发、测试、部署的的大量时间。

5、更轻松地维护和扩展

  使用Dockerfile,只需要小小的配置修改,就可以替代大量的更新操作。而且使用Dockerfile使镜像构建透明化,不仅仅开发团队可以理解应用运行环境,也方便运维团队理解应用运行所需条件,帮助更好的生产环境中部署该镜像。

  
参考资源:《Docker技术入门与实战》
  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值