从Docker Hub 仓库下载一个ubuntu12.04操作系统的镜像
# docker pull ubuntu:12.04
要从本地文件系统导入一个镜像,可以使用openvz(容器虚拟化的先锋技术)的模板来创建:openvz的模板下载地址
假如本地有一个ubuntu-14.04的镜像,可以使用如下命令导入
# cat ubuntu-14.04-x86_64-minimal.tar.gz |docker import - ubuntu:14.04
用户可以通过docker push
命令,把自己创建的镜像上传到仓库中来共享。例如,用户在Docker Hub上完成注册后,可以推送自己的镜像到仓库中。
格式:docker push
# sudo docker push ouruser/sinatra:v2
注意:这里的ouruser
是你docker hub上注册的Docker ID,sinatra
是仓库名,v2
是镜像的TAG
如果要导出镜像到本地文件,可以使用docker save
命令。
[root@iz2ze17ycr0qumhrw3n3ryz sinatra]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ouruser/sinatra v2 5149fe9d8891 About an hour ago 453 MB
docker save -o newimage.tar ouruser/sinatra:v2
使用ls
查看发现本地有这个新的tar包了,说明导出成功
可以使用docker load
从导出的本地文件中再导入到本地镜像库,例如
docker load --input newimage.tar
或docker load < newimage.tar
这将导入镜像以及其相关的元数据信息(包括标签等)。
如果要移除本地的镜像,可以使用docker rmi
命令。注意docker rm
命令是移除容器。
*注意:在删除镜像之前要先用 docker rm
删掉依赖于这个镜像的所有容器。
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本
docker images –a
命令可以列出所有的镜像,也可以说是列出了所有的可读层
如果你想要查看某一个image-id下的所有层,可以使用docker history
来查看。
我们可以从 Docker Hub 网站来搜索镜像,Docker Hub 网址为: https://hub.docker.com/
我们也可以使用docker search
命令来搜索镜像。比如我们需要一个httpd的镜像来作为我们的web服务。我们可以通过docker search
命令搜索 httpd 来寻找适合我们的镜像。
NAME:镜像仓库源的名称
DESCRIPTION:镜像的描述
OFFICIAL:是否docker官方发布
更新镜像之前,我们需要使用镜像来创建一个容器。
# docker run -t -i ubuntu:12.04 /bin/bash
在运行的容器内使用 apt-get update 命令进行更新。
在完成操作之后,输入 exit命令来退出这个容器。
此时ID为fbdabdfdc00a的容器,是按我们的需求更改的容器。我们可以通过命令docker commit
来提交容器副本
我们可以使用 docker tag 命令,为镜像添加一个新的标签
docker tag 1d6ccfe06918 peithon/centos:dev
ocker tag 镜像ID,这里是1d6ccfe06918,用户名称、镜像源名(repository name)和新的标签名(tag)。