docker 镜像(image)类似于虚拟机镜像,可以将它理解为一个面向 docker 引擎的只读模板,包含了文件系统
例如:一个镜像可以只包含一个完整的 centos 操作系统环境,可以把它称为一个 centos 镜像。镜像也可以安装了 tomcat、nginx 应用程序(或者所需其他软件),可以把它称为一个 tomcat 镜像。
镜像是创建 docker 容器的基础,通过版本管理和增量的文件系统,docker 提供了一套十分简单的机制来创建和更新现有的镜像,用户甚至可以从网上下载一个已经做好的应用镜像,并通过简单的命令就可以直接使用
下面是基于镜像的操作
docker 查看信息
docker info
获取镜像
>> docker pull centos
>> docker pull dl.dookerpool.com:5000/ubuntu
>> docker --insecure-registry=dl.dockerpool.com:5000 pull ubuntu #启用不安全的注册通道,前面是注册服务器地址,pull后面则是镜像名
查看镜像信息
>> docker images
搜寻镜像
>> docker search centos
>> docker search —automated=false centos #仅显示自动创建的镜像
>> docker search —no-trunc=false centos #输出信息不截断显示
>> docker search -s=5 centos #指定仅显示评价为指定星级以上的镜像
删除镜像
>> docker rmi ImageID
>> docker rmi -f ImageID
>> docker rm ContainerID
基于已有镜像的容器创建
-a, —author=“” #作者信息
-m, —message=“” #提交消息
-p, —pause=true #提交时暂停容器运行
>> docker run -ti centos /bin/bash
>> echo “This container is a Centos!!!” > New_centos
>> exit
>> docker commit -a "hongxue" -m "added new container” source_id new_name
在这里source_id为原容器的id,new_name为新镜像的名称,如果构建成功,则会显示新的image的ID
基于本地模块导入
>> http://openvz.org/Download/template/precreated 下载镜像包centos-6-x86_64.tar.gz
>> cat cents-6-x86_64.tar.gz | docker import - cents_download
存出和载入镜像
可以使用docker save 和 docker load命令来存出和载入镜像
(1)存出镜像
>> docker save -o centos.bak.tar centos:latest
(2)载入镜像
>> docker load --input save_centos.tar
>> docker load < save_centos.tar
修改镜像的标记
<none> <none> 7322fbe74aa5 8 weeks ago 172.2 MB
>> docker tag 7322fbe74aa5 centos:latest #将两个none改为centos:latest
通过镜像构建容器并且运行
>> docker run -t -i centos
查看本机上所存在的所有容器
>> docker ps -a