Docker的核心概念
镜像
Docker的镜像是创建容器的基础,类似虚拟机的快照,可以理解为是一个面向Docker容器引擎的只读模板,比如:一个镜像可以是一个完整的CentOS操作系统环境,称为一个Centos镜像;可以是一个安装了 MYSOL的应用程序,称之为一个MySQL镜像等等。
Docker提供了简单的机制来创建和更新现有的镜像,用户也可以从网上下载已经做好的应用镜像来直接使用.
容器
Docker的容器是从镜像创建的运行实例,它可以被启动,停止和别除。所创建的每一个容器都是相互隔离,互不可见的,可以保证平台的安全性,还可以把容器看作
是一个简易版的Linux环境, Docker利用容器来运行和隔离应用。
仓库
Docker仓库是用来集中保存镜像的地方,当创建了自己的镜像之后,可以使用push命令将它上传到公共仓库( Public)或者私有仓库( Private),这样一来当下次要在另一台机器上使用这个镜像的时候,只需要从仓库上pull下来就可以了。
仓库注册服务册服务器( Registry)是存放仓库的地方,其中包含了多个仓库,每个仓库集中存放某一类镜像,并且使用不同的标签(tag)来区分它们,目前最大的公共仓库是 Docker Hub,其中存放了数量庞大的镜像供用户下载使用。
Docker运行容器前需要本地存在对应的镜像,如果不存在本地镜像 Docker就会试默认镜像仓库htps://hub.docker. com下载,这是由 Docker官方维护的一个公共仓库,可以满足用户的绝大部分需求。用户也可以通过配置来使用自定义的镜像仓库。
搜索镜像命令格式:docker search 关键字 # docker search cobbler //搜索cobbler镜像
获取镜像命令格式:docker pull 仓库名称[:标签]
对于docker来说,如果下载镜像时不指定标签,则默认会下载仓库中最新版,因此也可通过制定标签来下载指定版本,这里的标签(tag)就是用来区分镜像版本的。
# docker pull jasonlix/docker-cobbler //下载cobbler镜像 查看镜像信息 # docker images //查看所有镜像信息 REPOSITORY一镜像属于的仓库。 TAG一镜像的标签信息,标记同一个仓库中的不同镜像。 IMAGE ID一镜像的唯一ID号,唯一标识了该镜像。 CREATED一镜像创建时间。 VIRTUAL SIZE一镜像大小。 查看单独镜像详细信息 # docker inspect 2211e1f06c4e 定义标签命令格式:docker tag 镜像名称:[标签] 新名称:[新标签] # docker tag jasonlix/docker-cobbler cobbler:cobbler1 //为jasonlix/docker-cobbler定义一个新标签
删除镜像方法一:docker rmi 仓库名称:标签
方法二:docker rmi 镜像ID号 # docker rmi cobbler:cobbler1
存出镜像 载入镜像存出镜像:当需要把一台机器上的镜像迁移到另一台机器上的时候,需要将镜像保存成本地文件,这一过程叫做存出镜像。
载入镜像:从别的机器拷贝镜像,将该镜像导入到自己的镜像库中,这一过程叫做载入镜像
命令格式:docker save -o 存储文件名 存储的镜像
# docker save -o cobbler jasonlix/docker-cobbler命令格式:docker load < 存出的镜像文件
或者:
docker --input 存出的镜像文件
上传镜像