十问docker —— 看docker的颜值与气质

简介:

云计算的热门带火了一批技术名词,“当红炸子鸡”docker就是其中的一个。有着洋名的docker到底是什么,让我们用十个问题让你看懂。

一问:docker是个什么东东?

docker的官方定义是实现轻量级的操作系统虚拟化解决方案。 Docker 的基础是 Linux 容器(LXC)等技术。

在 LXC 的基础上 Docker 进行了进一步的封装,让用户不需要去关心容器的管理,使得操作更为简便。用户操作 Docker 的容器就像操作一个快速轻量级的虚拟机一样简单。

通俗的说,docker可以提供标准化的集装箱(应用及其运行依赖),可以装到任何货轮(Linux操作系统)上面,运到世界各地。

二问:docker这么高大上,看看由什么组成?

docker由镜像,容器和仓库三部分组成。

1、镜像(image):Docker 镜像就是一个只读的模板,镜像可以用来创建 Docker 容器。Docker 提供了一个很简单的机制来创建镜像或者更新现有的镜像,用户甚至可以直接从其他人那里下载一个已经做好的镜像来直接使用。

2、容器( Container):容器是从镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。可以把容器看做是一个简易版的 Linux 环境,Docker 利用容器来运行应用。

3、仓库:仓库是集中存放镜像文件的场所,仓库注册服务器(Registry)上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(tag)。目前,最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载。

十问docker —— 看docker的颜值与气质

1 docker运行

 

三问:docker为什么这么火?颜值+气质!

更快速的交付和部署

对开发和运维(devop)人员来说,最希望的就是一次创建或配置,可以在任意地方正常运行。Docker实现了开发和运维人员的愿望。

更高效的虚拟化

docker 容器的运行不需要额外的 hypervisor 支持,它是内核级的虚拟化,因此可以实现更高的性能和效率。

更轻松的迁移和扩展

Docker 容器几乎可以在任意的平台上运行,包括物理机、虚拟机、公有云、私有云、个人电脑、服务器等。 这种兼容性可以让用户把一个应用程序从一个平台直接迁移到另外一个。

更简单的管理

使用 Docker,只需要小小的修改,就可以替代以往大量的更新工作。所有的修改都以增量的方式被分发和更新,从而实现自动化并且高效的管理。

四问:docker与容器有什么关系?

Docker准确说是基于OS层的虚拟化,是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。

由此我们可以看出,Docker并非是容器,而是管理容器的引擎。如果把容器比作标准化的集装箱,而Docker负责打包、操作集装箱。

十问docker —— 看docker的颜值与气质

什么是docker

五问:docker与虚拟化的不同?

容器是在操作系统层面上实现虚拟化,直接复用本地主机的操作系统,而传统方式则是在硬件层面实现。

传统虚拟化类似于整机柜里面的单台服务器,每个服务器有自己独立的电源模块和风扇;而Docker相当于浪潮的整机柜服务器产品SmartRack, 机柜里面所有的节点都没有自己的电源模块和风扇,而是使用机柜统一提供的电源接口和风扇。

十问docker —— 看docker的颜值与气质

传统VM

十问docker —— 看docker的颜值与气质

4 docker

  

六问:dockeropenstack会有联系吗?

OpenStack通过其组件Nova实现对容器的管理。Nova驱动将会进行扩展,以便用来催生Docker容器。下面是Nova Docker wiki里面提及的架构示意图:

十问docker —— 看docker的颜值与气质

5 Nova Docker wiki架构图

  • 为了催生容器,Nova计算驱动将指向Docker。
  • Nova Docker Virt驱动使用http api与Docker进行对话
  • Docker镜像保存在Docker Registry中,并且从这里暴露给Glance,Nova将会使用Docker Registry创建容器。

七问:docker与浪潮云海OS之间有摩擦出关系吗?

答案是肯定的,浪潮云海OS能够实现对Docker的管理。小伙伴们,浪潮云海OS能实现在统一界面下,对虚拟机和Docker的异构管理,不需要在虚拟化管理和Docker管理间来回切换操作,对于追求管理效率的boss们来说绝对有吸引力。

八问:docker这么新,敢于吃螃蟹的是哪些人?

docker最先在互连网领域使用,并且应用最广。互联网企业业务繁多,开发、运维环境非常复杂,应用部署通常采用分布式架构,后台服务种类较多。互连网业务遇到的这些都是docker最擅长解决的问题。当前,国内外互联网公司已纷纷将docker集成到内部的开发测试流程,并以docker为载体发布应用。

Google早在10多年前就开始使用容器,2014年6月,在DockerCon大会上,Google启动Kubernetes开源项目,Kubernetes是Docker一个精致、可扩展和便携式的管理框架,系统开源后,迅速得到IBM、RedHat、Microsoft、Docker、Mesosphere、CoreOSc等厂商的支持。

九问:docker的应用场景是怎样的?

docker广泛应用于:

  • 应用的快速开发、交付,自动化测试
  • 应用快速迁移及升级
  • 在某些对资源隔离要求宽松的应用场景下可以替代传统的虚拟机应用部署方式

十问:浪潮云海OS虚拟化组件如何实现对docker的管理?

浪潮云海OS InCloud Sphere 4.O包含两种docker 容器部署的功能:

1.支持 CoreOS 607.0.0 Linux VM 和配置云配置驱动器

2.面向 CoreOS 607.0.0、Ubuntu 14.04、RHEL/CentOS/Oracle Linux 7 的容器管理功能

InCloud Sphere能够识别 VM 中运行的任何 Docker 容器。 iCenter 还能够与容器交互,以允许启动、停止和暂停操作以及其他性能监视和诊断功能。

十问docker —— 看docker的颜值与气质

原文发布时间为:2016-03-29

本文来自云栖社区合作伙伴至顶网,了解相关信息可以关注至顶网。



相关文章
|
12月前
|
运维 Kubernetes Cloud Native
【k8s 系列】k8s 学习三,docker回顾,k8s 起航
【k8s 系列】k8s 学习三,docker回顾,k8s 起航
111 2
|
运维 Kubernetes 负载均衡
Docker不香吗?为什么还要用k8s
Docker不香吗?为什么还要用k8s
Docker不香吗?为什么还要用k8s
|
测试技术 Linux 应用服务中间件
docker是什么?docker能干嘛?dcokerfile计划第一期
docker是什么?docker能干嘛?dcokerfile计划第一期
110 0
|
运维 Java Linux
一幅长文细学Docker(一)——初识docker
Docker是一个开源的应用容器引擎,其诞生于2013年初,基于Go语言实现,由dotCloud公司出品。在docker产品爆火之后,公司改名为Docker Inc。Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上。
149 0
|
运维 程序员 Linux
Docker 系列 _ 01_ 一念缘起
人们只有在经历过诸多痛苦之后,才会相信这“缘分”的存在。
123 0
Docker 系列 _ 01_ 一念缘起
|
NoSQL 网络协议 应用服务中间件
docker-compose是个好东西,越用越香
本文会讲述企业级示例项目中用到的 docker volume、docker network、redis、sqlite、docker HealthCheck 等相关知识,忽略CentOS基本操作、Linux 下安装Docker、docker compose工具, Linux安装Redis等前置知识点。
docker-compose是个好东西,越用越香
|
监控 安全 关系型数据库
Docker从入门到上瘾
Linux容器是与系统其他部分隔离开的一系列进程,从另一个镜像运行,并由该镜像提供支持进程所需的全部文件。容器提供的镜像包含了应用的所有依赖项,因而在从开发到测试再到生产的整个过程中,它都具有可移植性和一致性。
Docker从入门到上瘾
|
Linux 虚拟化 Docker
天天在捣鼓Docker,你是否真正的把握住了?
📢Docker本身并不是容器,它是创建容器的工具,是应用容器引擎。
152 0
天天在捣鼓Docker,你是否真正的把握住了?
|
存储 Ubuntu 关系型数据库
一些docker的技巧和秘诀
关于docker容器和镜像的关系 无论容器里做什么操作,写文件,删文件。该容器的基本镜像都不会有任何改变。这是因为Docker从父镜像建立增量镜像,只存储每个容器的更改。因此,如果你有一个300MB的父镜像,如果你在容器中安装了50MB的额外应用或服务,你的容器只有50MB,父镜像还是300MB。 但是可以使用Dockfile或commit命令来,把增量镜像和父镜像一起生成一个新的镜像。 dock top -- 显示容器中运行的进程 查看容器的root用户名和密码 docker logs <容器名orID> 2>&1 | grep '^User: ' | tail -n1 因为docker
172 0