1.搜寻镜像
使用 docker search 命令可以搜索远端仓库中共享的镜像,默认搜索官方仓库中的镜像。
命令 docker search TERM
支持的参数
–automated=true|false 仅显示自动创建的镜像,默认为否
–no-trunc=true|false 输出信息不截断显示,默认为否
-s,–stars=X 指定仅显示评价为指定星级以上的镜像,默认为0(输出所有镜像)。
2.删除镜像
1.使用标签删除镜像
使用命令docker rmi 标签或者id
2.使用镜像ID删除镜像
当使用 docker rmi 命令,并且后面跟上镜像的 ID(也可以是能进行区分的部分 ID 串前 缀)时,会先尝试删除所有指向该镜像的标签,然后删除该镜像文件本身。 注意,当有该镜像创建的容器存在时,镜像文件默认是无法被删除的
通过docker ps -a查看本机存在的所有的容器
运行中的容器是无法删除的,如果需要强制删除的话,可以使用参数 -f
docker rmi -f 标签
注意,通常并不推荐使用-f 参数来强制删除一个存在容器依赖的镜像。正确的做法是, 先 删除依赖该镜像的所有容器,再来删除镜像。首先删除容器
docker rm id
再使用 ID 来删除镜像,此时会正常打印出删除的各层信息:
docker rmi id
3.创建镜像
创建镜像的方法主要有三种:基于已有镜像的容器创建、基于本地模板导入、基于 Dockerfile 创建。
1.基于已有镜像的容器创建 该方法主要是使用 docker commit 命令。
命令格式为 docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]],
主要选项包括
-a,–author="":作者信息;
-c,–change=[ ]:提交的时候执行 Dockerfile 指令,包括 CMD | ENTRYPOINT | ENV l EXPOSE | LABEL | ONBUILD | USER | VOLUME | WORKDIR 等;
-m,–message="":提交消息;
-p,–pause=true:提交时暂停容器运行。
2.基于本地模板导入 用户也可以直接从一个操作系统模板文件导入一个镜像,主要使用
docker import
命令。 命令格式为
`docker import [OPTIONS] file |URL|-[REPOSITORY [:TAG]]`
要直接导入一个镜像,可以使用 OpenVZ 提供的模板来创建,或者用其他已导出的镜像 模板来创建。
OPENVZ 模板的下载地址
4.镜像的存出与载入
用户可以使用 docker save 和 docker load 命令来存出和载入镜像。
1.存出镜像 如果要导出镜像到本地文件,可以使用 docker save 命令。
docker save -o ubuntu_14.04.tar ubuntu:14.04
输出 输出文件名 容器标签
导出本地的 ubuntu:14.04 镜像为文件 ubuntu_14.04.tar,导出之后用户就可以通过复制 ubuntu_14.04.tar 文件将该镜像分享给他人。
2.载入镜像 可以使用 docker load 将导出的 tar 文件再导入到本地镜像库。
docker load --input ubuntu_14.04.tar
从文件 ubuntu_14.04.tar 导入镜像到本地镜像列表,这将导入镜像及其相关的元数据信息(包括标签等)。导入成功后,可以使用 docker images
5.上传docker镜像
可以使用 docker push 命令上传镜像到仓库,默认上传到 Docker Hub 官方仓库(需 要登录)。
命令格式为:
docker push NAME [:TAG] l [REGISTRY_HOST [:REGISTRY_PORT]/ ] NAME [:TAG]
用户在 Docker Hub 网站注册后可以上传自制的镜像。
user 上传本地的 test: latest 镜像.可以先添加新的标签 user/test:latest,然后用 docker push 命令上传镜 像:docker tag test:latest user/test:latest $docker push user/test:latest 第一次上传时,会提示输入登录信息或进行注册。