docker初步认识

虚拟化技术:
    虚拟化一般分为硬件虚拟化与操作系统虚拟化。硬件级虚拟化是运行在硬件之上的虚拟化技术,例如,我们常用的hypervisor或者vmware workstation。他需要模拟的就是一个完整的操作系统,目前流行的Xen,Virtual box、亚马逊AWS以及阿里云都是用的这种技术。操作系统虚拟化是运行在操作系统之上的,模拟的是运行在操作系统之上的多个不同的进程,并将其封装在一个密闭的容器里,也称为容器化技术。例如:Docker。
云服务的三种计算模式:
     IaaS(基础设施即服务):就是简单的基础架构,比如,服务器,虚拟化,负载均衡,网络等。例如:OpenStack、CloudStack。
     PaaS(平台即服务):就是云端已经为你提供好了可执行的环境、数据库、网站服务器。例如,阿里云的ESC服务器等,docker就是基于此。还有著名的dotcloud公司.
     SaaS(软件即服务):云端已经为你提供好了软件,例如,邮件系统、在线协作、在线办公等。
Docker简介:
     docker 是基于Go语言实现的云开源项目。docker的基础就是linux容器技术(linux。Contains,LXC)。IBM DeveloperWorks给出的关于容器技术的准确描述是:
     容器有效地将由单个操作系统管理的资源划分到孤立的组之中,以便更好地在孤立的组之间平衡有冲突的资源使用需求。与虚拟化相比,这样既不需要指令级模拟,也不需要即时编译。容器可以在核心CPU本地运行指令,而不需要任何专门的解释机制。此外,也避免了准虚拟化和系统调用替换中的复杂性。
     docker是操作系统层实现的虚拟化,直接复用本地的操作系统,而传统方式则是在硬件层面实现。
docker与传统虚拟化的比较:

docker的基本结构:

     可以看到,容器省去了操作系统,层级更简化,可以在单台服务器上运行更多的应用。
docker容器技术与传统虚拟机技术的特性比较:


docker的优势:
     1、更快速的交付和部署
     2、更高效的虚拟化
     3、更轻松的迁移和扩展
     4、更简单的管理
docker应用场景:

  • web应用的自动化打包和发布
  • 自动化测试和持续集成、发布
  • 在服务型环境中部署和调整数据库或者其他的后台应用
  • 从头编译或者扩展现有的openshift或者cloud foundry平台来搭建自己的PaaS环境。
    关于docker的三个概念:
    1、镜像:
         就是一个只读的模板,一个镜像可以包含一个完整的Ubuntu或者centos系统环境,里面仅安装了一些用户需要的应用程序。利用镜像来创建docker容器。可以对比类似理解为VMware中每台虚拟机挂载的iso文件。但docker中的镜像比这个要强大,例如,有的镜像直接安装好了数据库等。
    2、容器:
         容器是从镜像创建的运行实例。可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。可以对比理解为vmare中安装的每台虚拟机,我们可以安装不同操作系统的虚拟机。就类似于我们可以启动不用应用服务的容器。
    3、仓库:
         集中存放镜像文件的场所。仓库分为公开仓库与私有仓库。常用的最大默认公有仓库是Docker Hub。国内的公开 仓库包括Docker pool等。
         用户也可以自己创建一个私有仓库。
         docker仓库的概念类似跟Git类似,注册服务器可以理解为GitHub这样的托管服务。
发布了36 篇原创文章 · 获赞 3 · 访问量 8017

猜你喜欢

转载自blog.csdn.net/qq_41547105/article/details/104387729