返回首页
当前位置: 主页 > 网络编程 > Android教程 >

Docker 概念及基本用法概述

时间:2016-12-28 20:22来源:betway必威官网www.etsupport.net 编辑:麦田守望者

Docker 是一个开源的应用容器引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

容器技术

Linux 容器技术很早就有了,比较有名的是被集成到主流 Linux 内核中的 LXC 项目。容器通过对操作系统的资源访问进行限制,构建成独立的资源池,让应用运行在一个相对隔离的空间里,同时容器间也可以进行通信。

容器技术对比虚拟化技术,容器比虚拟化更轻量级,对资源的消耗小很多。容器操作也更快捷,启动和停止都要比虚拟机快。但 Docker 容器需要与主机共享操作系统内核,不能像虚拟机那样运行独立的内核。

Docker 是一个基于LXC技术构建的容器引擎,基于 GO 语言开发,遵循 Apache2.0 协议开源。Docker 的发展得益于为使用者提供了更好的容器操作接口。包括一系列的容器,镜像,网络等管理工具,可以让用户简单的创建和使用容器。

Docker 支持将应用打包进一个可以移植的容器中,重新定义了应用开发,测试,部署上线的过程,核心理念就是 Build once, Run anywhere

Docker 容器技术的典型应用场景是开发运维上提供持续集成和持续部署的服务。

下面我们开始介绍 Docker 中的几个基本概念。

镜像

Docker 的镜像概念类似于虚拟机里的镜像,是一个只读的模板,一个独立的文件系统,包括运行容器所需的数据,可以用来创建新的容器。

镜像可以基于 Dockerfile 构建,Dockerfile 是一个描述文件,里面包含若干条命令,每条命令都会对基础文件系统创建新的层次结构。

用户可以通过编写 Dockerfile 创建新的镜像,也可以直接从类似 github 的 Docker Hub 上下载镜像使用。

容器

Docker 容器是由 Docker 镜像创建的运行实例。 Docker 容器类似虚拟机,可以支持的操作包括启动,停止,删除等。每个容器间是相互隔离的,但隔离的效果比不上虚拟机。容器中会运行特定的应用,包含特定应用的代码及所需的依赖文件。

在 Docker 容器中,每个容器之间的隔离使用 Linux 的 CGroups 和 Namespaces 技术实现的。其中 CGroups 对 CPU,内存,磁盘等资源的访问限制,Namespaces 提供了环境的隔离。

仓库

如果你使用过 git 和 github 就很容易理解 Docker 的仓库概念。 Docke r仓库相当于一个 github 上的代码库。

Docker 仓库是用来包含镜像的位置,Docker 提供一个注册服务器(Registry)来保存多个仓库,每个仓库又可以包含多个具备不同 tag 的镜像。Docker 运行中使用的默认仓库是 Docker Hub 公共仓库。

仓库支持的操作类似 git,创建了新的镜像后,我们可以 push 提交到仓库,也可以从指定仓库 pull 拉取镜像到本地。

顶一下
(1)
100%
踩一下
(0)
0%
标签(Tag):Docker
------分隔线----------------------------
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片