zoukankan      html  css  js  c++  java
  • Docker 简介

    一.什么是Docker,能干什么?

    Docker是一个开源的应用容器引擎,(C/S)架构程序。   Docker作为一个软件集装箱化平台,可以让开发者构建应用程序时,将它与其依赖环境一起打包到一个容器中,然后很容易地发布和应用到任意平台中。

    思想:

      1.集装箱

      2.标准化

      3.隔离

    二.Docker容器 与虚拟机有什么区别?

    首先明确一点,Docker容器不是虚拟机!

    第一次接触Docker时,我把它比作一种轻量级的虚拟机。这样做无可厚非,因为Docker最初的成功秘诀,正是它比虚拟机更节省内存,启动更快。Docker不停地给大家宣传,“虚拟机需要数分钟启动,而Docker容器是秒级启动”

    理解虚拟机

    使用虚拟机运行多个相互隔离的应用时,如下图:

    从下到上理解上图:

    1.基础设施(Infrastructure) .。它可以是你的个人电脑,数据中心的服务器,或者是云主机。

    2.主操作系统(Host Operating System)。 你的个人电脑之上,运行的可能是MacOS, Windows或者某个Linux发行版。

    3.虚拟机管理系统(Hypervisor) 。 利用Hypervisor,可以在著操作系统上运行多个不同的从操作系统。

    4.从操作系统(Guest Operating System)。 假设你需要运行3个相互隔离的应用,则需要使用Hypervisor启动3个从操作系统,也就是3个虚拟机。

    这些虚拟机都非常大,也许有700MB,这就意味着他们将占用2.1GB的磁盘空间。更糟糕的是,他们还会消耗很多CPU和内存

    理解Docker容器

    使用Docker容器运行多个相互隔离的应用时,如下图:

    1.主操作系统(Host Operating System)。 所有主流的Linux发行版都可以运行Docker。对于MacOS和Windows,也有一些办法运行Docker.

    2.Docker守护进程(Docker Daemon)。 Docker守护进程取代了Hypervisor,它是运行在操作系统之上的后台进程,负责管理Docker容器。

    对比虚拟机与Docker

    Docker守护进程可以直接与主操作系统进行通信,为各个Docker容器分配资源,它还可以将容器与主操作系统隔离,并将各个容器相互隔离

    虚拟机启动需要数分钟,而Docker容器启动秒级。由于没有臃肿的从操作系统,Docker可以节省大量的磁盘空间以及其他系统资源。

  • 相关阅读:
    0108 创建表约束
    Mybatis 将数据库中查出的记录,一对多返回,即分组,然后返回每个组的所有数据
    SQL主表、从表
    MySQL中添加、删除字段,使用SQL语句操作
    git 将远程工作分支合并到本地dev分支
    MySQL inner join 和 left join 的区别
    Mysql union 和 order by 同时使用需要注意的问题
    The used SELECT statements have a different number of columns
    Every derived table must have its own alias(MySQL报错:每个派生表都必须有自己的别名)
    MySQL 日期格式化及字符串、date、毫秒互相转化
  • 原文地址:https://www.cnblogs.com/s686zhou/p/12290852.html
Copyright © 2011-2022 走看看