一起学docker(1)--简介
来源:互联网 发布:js防水涂料最新配方 编辑:程序博客网 时间:2024/05/16 12:17
最近几年docker非常火爆啊,正好公司也有需求,那么,自然就是学习docker的最佳时机,既有欲望,又有需求,对于程序员来说,就像是遇到了“林妹妹”一样,还要老办法,学习任何一种技术,我们都要带着这几个问题:
docker是啥?
docker怎么做?
为什么是docker?
下面我们就一步步开始解开这几个问题。
docker是啥?
要了解docker,有个前提就是要起码用过一款虚拟机,docker实际和大家使用的虚拟机是一致的,不是个新概念,而他和普通虚拟机有啥不同呢,先放两张图,自行脑补,图后解答(来自docker官网):
从图上和我画的红线,大家不难发现,docker其实是对虚拟机的虚拟技术做了整合,整合了系统底层,但是,docker和以前的虚拟机,功能上没有太多的变化,依旧是提供虚拟服务,大家心安,这不是个新东西,起码不是新概念。
docker怎么做?
想要解决这个问题,我们还是要对操作系统有个整体的认识,二话不说,上图:
linux系统分为如下几层,提供服务:内核、shell、文件系统和应用程序。
其中内核,shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序,管理文件并使用系统,而docker就是在系统层上复用内核,shell,抽象为层,这样我们就可以像盖房子一样,进行组装了(底层复用),程序底层无非是各种调用,既然这样,这种做法就非常高效,因为我们节省了机器性能!
为什么是docker?
说了这么多原理,我们为什么使用docker呢?是什么吸引我们,我个人认为有如下几点:
1,安装简单,yum apt 就可以,一般应用名是docker.io
2,运行迅速,docker服务运行一个ubuntu系统,几乎就是毫秒级
3,资源丰富,现在不论是国内还是国外,docker镜像非常丰富
4,自定制简单,拿到基础镜像,启动,安装程序,你就拥有了自己的镜像
5,节省硬件资源,我们可以在普通服务机上虚拟几百个基础镜像,运行速度都几乎没有影响(不考虑网络及其他因素)
总结
- 一起学docker(1)--简介
- 一起学docker(2)--基本概念
- 一起学docker(3)--安装并运行ubuntu
- 一起学编程(1)
- 一起学android(1)
- 一起学Kotlin(1)
- 一起学Python:TCP简介
- 与LSGO一起学“第1章 初识C++(1.1 C++简介)”
- 一起学CC3200之开发环境简介(1)CCS篇
- docker【1】docker简介(入门知识)
- 大家一起学C++(1)
- 一起学Java_Java语言基础(1)
- 一起学Java_面向对象(1)
- 一起学Java8(1)--配置环境变量
- 一起学java 1
- 一起学WCF【1】
- 一起学WF3.5【1】
- 一起学android(2)
- 01 : BLE 相关网站的链接地址
- 【Android+OkHttp3+Jsoup】 模拟登录教务系统 抓取课表和成绩
- Android性能专项测试之Heap Viewer工具的使用
- 线程
- Java读取xml文件的四种方法
- 一起学docker(1)--简介
- Eclipse 使用 Maven 的 dependency source code 进行 debug
- 页面常用的JS和异步请求(一)
- Android Studio 自动升级 gradle 失败解决方案
- git pull error (no local branch)
- Zookeeper(6)-Zookeeper 存储与client
- 字符串出现的次数
- 手把手教React Native实战之44API学习-网络状态与数据交互
- 关于网络连接Network的使用