Docker (一) - 概述

一. Docker 产生的背景

提高资源的利用率,实现分布式的计算。云计算的核心即虚拟化和分布式,利用 Docker 我们可以在多台服务器轻松地扩展应用。我们所熟知的虚拟机 VMWare 即一种虚拟化技术,VMWare 建立在操作系统之上,并且 VMWare 内部可以运行多个应用。

但 VMWare 本身会占用一定的机器资源,对硬件是有损耗的。而我们接下来要学习的 Docker 则是一种容器虚拟化技术,即轻量级的虚拟化,每一个 Docker 实例直接运行在操作系统之上,相当于操作系统的一个应用,因此不会额外消耗硬件资源,能更充分地利用操作系统的特性和机制。

DevOPS 即研发和运维一体化,自动化创建和部署的需求。Docker 产生的另一个背景即研发和运维一体化,实现软件的更快交付和部署,更高效的资源利用,更轻松的迁移以及更简单的更新管理(使用 DockerFile 配置文件增量更新和分发)。

二. 什么是 Docker

Docker 是一个开源的应用容器引擎,基于 Go 语言(Google 开发的一款语言),基于 Linux 容器(LXC)技术。

目前主流的 Linux 操作系统都支持 Docker,另外 Google、微软、亚马逊等 PassS 云部署平台也都提供 Docker 的支持。

容器完全使用沙箱机制,相互之间不会有任何接口,类似于 IPhone 中的各个 app,以保证容器间的安全。此外,容器的性能开销及低,创建和停止都十分迅速。Docker 的目标是一次封装,到处运行,可以是 WEB 容器,数据库等等。

Docker VS 虚拟化:

特性 容器 虚拟机
启动速度 秒级 分钟级
硬盘空间 MB GB(含有操作系统的部分)
性能 接近原生 10%的损失
系统支持数量 单机上千个 一般几十个
隔离性 安全隔离 完全隔离

三. Docker安装

Docker 支持主流的操作系统平台,Linux 原生支持(因为 Docker 本身基于 Linux 容器技术),体验最好。CentOS7,Extras 源中已经内置了 Docker ,直接使用 yum 进行安装即可:

yum install -y docker
docker --version
# centos7 中将 docker 变为服务,在开机时自动启动
systemctl enable docker
# 启动 docker 服务
systemctl start docker
# 关闭 docker 服务
systemctl stop docker

Docker 的配置文件所在目录:

/etc/docker/deamon.json

四. Docker 三大核心概念

  • 镜像 image :类似于虚拟机镜像,只读模板。
  • 容器 Container :轻量级的沙箱,运行的实例;相当于简易的 Linux 环境,在镜像上创建的可写层。
  • 仓库 Respository :Docker 集中存放镜像文件的场所,分为公有仓库和私有仓库,类似于 GitHub ,使用 push 上传,使用 pull 下载。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 什么是 Docker? Docker 是一种 Linux 容器技术,一种高效、敏捷、和轻量级的容器解决方案,并且支...
    凤落溪凰落地阅读 3,685评论 0 0
  • 一 、Docker概述 1)Docker介绍 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 A...
    Explorer_z阅读 3,328评论 0 0
  • *****再小的帆也能远航,只要学不死就往死里学!****** Docker 为什么会出现? 一款产品:开发--上...
    闲云野鹤_23dd阅读 2,839评论 0 0
  • 试验环境 centos7 Docker 概述 Docker 是一个开源框架应用容器,让开发者可以打包他们的应用以及...
    西南蔡徐坤阅读 2,720评论 0 0
  • 1.docker入门 本文阐述docker是什么,为什么用docker,以及怎么用,该章节为入门篇 ① docke...
    shiva_s_guard阅读 3,077评论 1 0

友情链接更多精彩内容