Docker概述

Docker 是什么

image-20210826100815398

  • Docker 使用 Google 公司推出的 Go 语言进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS 类的 Union FS 等技术
  • 容器是完全沙箱机制,容器开销极低
  • 对进程进行封装隔离,属于操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器
  • Docker 可以让开发者打包应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化
  • Docker 作为一个软件集装箱化平台,可以让开发者构建应用程序时,将它与其依赖环境一起打包到一个容器中
  • 然后很容易地发布和应用到任意平台中
  • Docker 是提供应用打包,部署与运行的容器化平台

Docker 解决什么问题

  • 解决了运行环境和配置问题,方便做 持续集成,有助于整体发布

Docker 与传统虚拟机

传统虚拟机

  • 传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需应用进程

image-20210826101158333

Docker

  • 而容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核,而且也没有进行硬件虚拟
  • 因此容器要比传统虚拟机更为轻便

image-20210826101943816

Docker 的优势

  • 更高效的利用系统资源
  • 更快速的启动时间
  • —致的运行环境
  • 持续交付和部署
  • 更轻松的迁移
  • 更轻松的维护和扩展

与传统虚拟机对比

🐤启动:

  • Docker:秒级
  • 虚拟机:分钟级

🐱‍👤硬盘使用:

  • Docker:MB
  • 虚拟机:GB

🧎‍♀️性能:

  • Docker:接近原生
  • 虚拟机:较弱

🐱‍🏍系统支持量:

  • Docker:单机支持上千个容器
  • 虚拟机:一般就几十个

Docker 模式与体系结构

  • Docker 使用客户端-服务器(C/S)架构模式,使用远程 API 来管理和创建 Docker 容器

image-20210826105231770

image-20210826105302374

整体架构

image-20210826105511963

posted @   BNTang  阅读(132)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
历史上的今天:
2020-08-26 Project
点击右上角即可分享
微信分享提示