CreateArtTechnology
/ Blog
Login
最新文章
Java
语言相关
库相关
虚拟机相关
CreateArtTechnology
项目搭建
使用的工具
自研的工具
开源工具
ELK
ElasticSearch
Jenkins
Markdown
GraphQL
Arthas
生产工具
Linux
Nginx
VersionControl
Subversion
Git
Redis
Archiva
Maven
Zookeeper
Spring
SpringBoot
MySql
HBase
Cassandra
容器化
Docker
Kubernetes
服务容器化从零开始
未分类笔记
算法相关
概念相关
豆知识
机器学习
机器学习从零开始
Docker介绍
11
2019-02-15 12:07:16
容器化
Docker
![](/img/pic/2019021511191310501_png_500_262_21992) > Docker ### Docker是什么 下面的图片比较了 Docker 和传统虚拟化方式的不同之处。传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需应用进程;而容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核,而且也没有进行硬件虚拟。因此容器要比传统虚拟机更为轻便。 ![](/img/pic/2019021511215027102_png_692_261_24790) > 传统虚拟化,最底层为完整操作系统 ![](/img/pic/2019021511240324403_png_689_195_22346) > Docker虚拟化,容器之间共享操作系统内核,更轻便 简而言之,Docker可以理解为在通常打包服务的基础上更进一步,把运行环境也一同打包、隔离运行的轻便虚拟机。 ### 为什么要用Docker Docker相较于传统虚拟机的优势: - **系统资源利用率高** 不需要运行完整的操作系统,容器间共享部分资源,使得资源利用率更高 - **启动速度快** 直接运行在系统内核,相较于虚拟机当然是快多了 - **运行环境一致** 除内核外的所有环境都打包 - **持续交付和部署** 可以通过Dockerfile定制镜像,进行测试、部署,对于其他人而言更好理解 - **其他** 包括迁移、扩展等 实际上以上优势都是与传统虚拟机进行比较的,显然相较于不使用虚拟化,以上很多优势都不存在。 然而,使用虚拟化最大的好处是运行环境一致,更利于迁移、部署,结合其他工具可以解决开发、运维、测试痛点: - 服务迁移,很多依赖的库(如ffmpeg、phpredis...)得在新机器上安装,不会装怎么办?不知道版本怎么办?所有脚本都得迁移,遗漏了怎么办?经历过才知道的痛。 - “这跑在我机器上没问题啊?” - 更容易实现蓝绿部署、故障自动恢复。 ### 官方网站 https://www.docker.com/ ### 参考资料 [Docker——从入门到实践](https://yeasy.gitbooks.io/docker_practice/ "Docker——从入门到实践")
发布文章 101
文章被阅读 1817
最近修改
什么是“丝滑”的曲线
2021-12-08 15:19:20
高效空间数据索引R树及其批量加载方法STR简介
2021-09-29 20:33:37
关于分库分表的一些事儿
2021-06-25 11:51:25
获得诺奖的稳定匹配理论之TTC算法与GS算法
2021-03-14 23:04:48
算法小白的机器学习入门实践,从零到上线
2021-01-13 14:28:27
分站宗旨
一站式资料平台,减少重复检索,减少重复采坑。