关于Docker镜像的一些操作命令

Docker镜像的使用

一.镜像的获取

1.使用docker pull命令来从仓库获取

从Docker Hub 仓库下载一个ubuntu12.04操作系统的镜像

# docker pull ubuntu:12.04

2.从本地文件系统导入

要从本地文件系统导入一个镜像,可以使用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<hub-user>/<repo-name>:<tag>

# 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.tardocker load < newimage.tar

这将导入镜像以及其相关的元数据信息(包括标签等)。

四.移除本地镜像

如果要移除本地的镜像,可以使用docker rmi命令。注意docker rm命令是移除容器。
这里写图片描述
这里写图片描述
*注意:在删除镜像之前要先用 docker rm删掉依赖于这个镜像的所有容器。

五.列出镜像列表

使用docker images
这里写图片描述
各个选项说明:

REPOSITORY:表示镜像的仓库源

TAG:镜像的标签

IMAGE ID:镜像ID

CREATED:镜像创建时间

SIZE:镜像大小

同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本

docker images –a命令可以列出所有的镜像,也可以说是列出了所有的可读层

如果你想要查看某一个image-id下的所有层,可以使用docker history <image-id>来查看。

六.查找镜像

我们可以从 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)。

使用docker images命令可以看到,ID为1d6ccfe06918的镜像多一个标签。
这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_39629343/article/details/80158126
今日推荐