Docker镜像操作命令实战

1.获取镜像

镜像是运行容器的前提,官方的Docker Hub网站已经提供了数十万个镜像供大家开放下载。

获取镜像命令

docker pull [Docker Registry 地址[:端口号]/] NAME[:TAG]

NAME:镜像仓库名称(用来区分镜像)
TAG:镜像的标签(往往用来表示版本信息),若不指定TAG,则默认会选择latest标签,这会下载仓库中最新版本的镜像。
可选参数:

  1. -a, --all-tags=true|false:是否获取仓库中的所有镜像,默认为否;
  2. –disable-content-trust:取消镜像的内容校验,默认为真。

获取Ubuntu 18.04系统的基础镜像

#  相当于从默认官方Docker Hub下载 
docker pull ubuntu:18.04
# 等同于
docker pullregistry.hub.docker.com/ubuntu:18.04

在这里插入图片描述

  1. 下载一个最新版本的Ubuntu操作系统的镜像
docker pull ubuntu

在这里插入图片描述
利用Ubuntu 18.04镜像创建容器,在其中运行bash应用

docker run -it ubuntu:18.04 bash

2.查看镜像信息

查看所有镜像信息

docker images

可选参数:

  1. -a, --all=true|false:列出所有(包括临时文件)镜像文件,默认为否;
  2. –digests=true|false:列出镜像的数字摘要值,默认为否;
  3. -f, --filter=[]:过滤列出的镜像,如dangling=true只显示没有被使用的镜像;也可指定带有特定标注的镜像等;
  4. –format=“TEMPLATE”:控制输出格式,如.ID代表ID信息,.Repository代表仓库信息等;
  5. –no-trunc=true|false:对输出结果中太长的部分是否进行截断,如镜像的ID信息,默认为是;
  6. -q, --quiet=true|false:仅输出ID信息,默认为否。
    在这里插入图片描述
    REPOSITORY:来自于哪个仓库,比如ubuntu表示ubuntu系列的基础镜像;
    TAG:镜像的标签信息,比如18.04、latest表示不同的版本信息。标签只是标记,并不能标识镜像内容;
    IMAGE ID:镜像的ID(唯一标识镜像),如果两个镜像的ID相同,说明它们实际上指向了同一个镜像,只是具有不同标签名称而已;
    CREATED:创建时间,说明镜像最后的更新时间;
    SIZE:镜像大小,优秀的镜像往往体积都较小。

添加镜像标签

docker tag [NAME:TAG] [OTHERNAME:TAG] 

为ubuntu:18.04加一个标签newununtu:18.04,标签名需要为小写
在这里插入图片描述

获取镜像的详细信息

docker inspect [NAME:TAG]

查看镜像ubuntu:18.04的详细信息:
在这里插入图片描述

查看镜像历史

docker history [NAME:TAG]

查看镜像ubuntu:18.04的历史,加上–no-trunc选项可以输出完整信息,不使用截断
在这里插入图片描述

3.搜索镜像

docker search [option] keyword

可选参数:

  1. -f, --filter filter:过滤输出内容
  2. –format string:格式化输出内容
  3. –limit int:限制输出结果个数,默认为25个
  4. –no-trunc:不截断输出结果
    在这里插入图片描述
    NAME:镜像名称
    DESCRIPTION:镜像描述
    STARS:镜像收藏数,表示该镜像的受欢迎程度
    OFFICIAL:是否官方创建
    AUTOMATED:是否自动创建

4.删除和清理镜像

删除镜像

docker rmi [IMAGE]

IMAGE:标签或ID
可选参数:

  1. -f, -force:强制删除镜像,即使有容器依赖它
  2. -no-prune:不要清理未带标签的父镜像
    在这里插入图片描述

清理镜像

使用Docker一段时间后,系统中可能会遗留一些临时的镜像文件,以及一些没有被使用的镜像,可以通过docker image prune命令来进行清理。
可选参数:

  1. -a, -all:删除所有无用镜像,不光是临时镜像
  2. -filter filter:只清理符合给定过滤器的镜像
  3. -f, -force:强制删除镜像,而不进行提示确认

5.创建镜像

创建镜像的方法:

  1. 基于已有镜像的容器创建
  2. 基于本地模板导入
  3. 基于Dockerfile创建

基于已有镜像的容器创建

docker commit [OPTIONS] CONTAINER [REPOSITORY [:TAG]]

可选参数:

  1. -a, --author="":作者信息
  2. -c, --change=[]:提交的时候执行Dockerfile指令,包括CMD|ENTRYPOINT|ENV|EXPOSE|LABEL|ONBUILD|USER|VOLUME|WORKDIR等
  3. -m, --message="":提交消息
  4. -p, --pause=true:提交时暂停容器运行
    在这里插入图片描述

基于本地模板导入

docker import [OPTIONS] file|URL|-[REPOSITORY [:TAG]]

基于Dockerfile创建

Dockerfile是一个文本文件,利用给定的指令描述基于某个父镜像创建新镜像的过程。

docker build [Dockerfile文件名]

6.上传镜像

上传镜像需要先进行登录,到Docker Hub注册账号,使用docker login进行登录后,再进行上传。注意,tag需要有注册的用户名,否则会上传失败

docker push NAME[:TAG][REGISTRY_HOST[:REGISTRY_PORT]/]NAME[:TAG]

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值