赞
踩
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
解决了运行环境和配置问题的软件容器, 方便做持续集成并有助于整体发布的容器虚拟化技术。
容器是完全使用沙箱机制,相互之间不会有任何接口。
Docker 和传统虚拟化方式的不同:
类似于虚拟机镜像,可以理解为一个面向Docker引擎的只读模板,包含了文件系统。
例如:一个镜像可以包含一个完整的Ubuntu操作系统环境,可以把它称为一个Ubuntu镜像。镜像也可以安装了Apache应用程序,可以把它称为一个Apache镜像。
镜像是创建Docker容器的基础。通过版本管理和增量的文件系统,Docker提供了一套十分简单的机制来创建和更新现有的镜像,用户甚至可以从网上下载一个已经做好的应用镜像,并通过简单的命令就可以直接使用。
Docker容器(Container)类似于一个轻量级的沙箱,Docker利用容器来运行和隔离应用。
容器是从镜像创建的应用运行实例,可以将其启动、开始、停止、删除,而这些容器都是相互隔离、互不可见的。
可以把容器看做一个简易版的Linux系统环境(包括root用户权限、进程空间、用户空间和网络空间等),以及运行在其中的应用程序打包而成的应用盒子。
镜像自身是只读的。容器从镜像启动的时候,Docker会在镜像的最上层创建一个可写层,镜像本身将保持不变。
容器与镜像的关系类似面向对象编程中的对象和类
Docker仓库(Repository)类似于代码仓库,是Docker集中存放镜像文件的场所。
注册服务器:Registry
注册服务器是存放仓库的地方,其上往往放着多个仓库。每个仓库集中存放某一类镜像,往往包括多个镜像文件,通过不同的标签(tag)来进行区分。
根据所存储的镜像公开分享与否,Docker仓库可以分为
Docker 本身是一个容器运行载体或称之为管理引擎。我们把应用程序和配置依赖打包好形成一个可交付的运行环境,这个打包好的运行环境就是image镜像文件。只有通过这个镜像文件才能生成Docker容器实例(类似Java中new出来一个对象)。image文件可以看作是容器的模板。Docker 根据 image 文件生成容器的实例。同一个 image 文件,可以生成多个同时运行的容器实例。
官网:www.docker.com
Linux安装:
$ sudo wget -qO- https://get.docker.com/ | sh
安装docker本身
sudo:当前用户是普通用户,但执行该命令时使用root身份执行
wget:命令行下载工具
-q:使wget输出不要那么多
O-:把wget的输出直接输出到标准输出,而不是输出到文件
|:管道
| sh:把输出交给sh
$ sudo usermod -aG docker xxx
允许非root用户(非superuser)来运行docker
修改用户组,把这个用户组加入到docker组里面(用户如果在docker组里,则可以不用sudo,不需要root就可以执行docker命令)
检查是否安装成功:docker info
如果执行此命令报错,则是docker没有启动,在centos中,使用
service docker start
Docker是一个Client-Server架构的系统,Docker守护进程运行在主机上,通过socket连接从客户端访问,守护进程从客户端接受命令并管理运行在主机上的容器。
客户端和守护进程进行操作,把命令送给守护进程,守护进程拖取镜像,运行容器并和远端的镜像仓库进行交互。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。