Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1888629
  • 博文数量: 2460
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 24729
  • 用 户 组: 普通用户
  • 注册时间: 2020-11-26 14:30
个人简介

更多python、Linux、网络安全学习内容,可移步:www.oldboyedu.com或关注\"老男孩Linux\"公众号

文章分类

全部博文(2460)

文章存档

2024年(310)

2023年(643)

2022年(693)

2021年(734)

2020年(80)

我的朋友

分类: LINUX

2022-12-28 15:22:38

  Docker是基于Go语言进行开发实现,一个开源的应用容器引擎。

  采用Linux内核的cgroup,namespace,以及AUFS类的Union FS等技术,对进程进行封装隔离,也可以实现虚拟化。

  隔离的进程独立于宿主和其他的隔离进程,因此也称其为容器。

  可以将Docker容器理解为一种轻量级的沙盒,每个容器内运行着一个应用,不同的容器相互隔离,容器之间也可以通过网络互相通信。

  容器的创建和停止十分快速,几乎跟创建和终止原生应用一致;

  另外,容器自身对系统资源的额外需求也十分有限,远远低于传统虚拟机。

  很多时候,直接将容器当作应用本身也没有任何问题。

  为什么使用docker

  对于开发和运维人员来说,{BANNED}最佳希望的效果就是一次创建或者配置后,可以在任意地方、任意时间让应用正常运行。

  对于算法研究人员来说,可能不同的算法需要不同版本的软件,那么在同一个环境中就会存在冲突。

  而docker 的环境隔离就可以很方便用于不同环境的配置。

  具体来说,docker优势主要有以下几个方面:

  1、快速交付和部署

  使用docker,开发人员可以使用镜像快速构建一套标准的开发环境;

  开发完成后,测试和运维人员可以使用完全相同的环境部署代码,只要是开发测试过的代码就可以确保在生产环境无缝运行。

  docker可以快速创建和删除容器,实现快速迭代。

  2、高效的资源利用

  运行docker容器不需要额外的虚拟化管理程序的支持。

  docker是内核级的虚拟化,可以实现更高的性能,同时对资源的额外需求很低。

  3、轻松的迁移和扩展

  docker容器几乎可以在任意的平台上运行,包括物理机、虚拟机、公有云、私有云、服务器等。

  同时支持主流的操作系统发行版本,这种兼容性让用户可以在不同平台间轻松的迁移应用。

  4、简单的更新管理

  使用Dockerfile生成镜像的方式,只需要小小的配置修改,就可以替代以往大量的更新工作,所有的修改都以增量的方式进行分发和更新,从而实现自动化且高效的容器管理。

  docker架构分析

  如下图所示,Docker采用的是 Client/Server 架构。

  客户端向服务器发送请求,服务器负责构建、运行和分发容器。

  客户端和服务器可以运行在同一个 Host 上,客户端也可以通过socket或 REST API与远程的服务器通信。


阅读(311) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~