镜像简介

镜像是一个Docker的可执行文件,其中包括运行应用程序所需的所有代码内容、依赖库、环境变量和配置文件等。

通过镜像可以创建一个或多个容器。

镜像搜索 - docker search

作用:

  • 搜索Docker Hub(镜像仓库)上的镜像

命令格式:

  • docker search [OPTIONS] TERM

命令参数(OPTIONS):

  • -f, --filter filter 根据提供的格式筛选结果
  • --format string 利用Go语言的format格式化输出结果
  • --limit int 展示最大的结果数,默认25个 --no-trunc 内容全部显示
docker search centos

  

只搜索官方的 centos

docker search -f is-official=true centos

镜像下载 docker pull

作用:

  • 下载远程仓库(如Docker Hub)中的镜像

命令格式:

  • docker pull [OPTIONS] NAME[:TAG|@DIGEST]

命令参数(OPTIONS):

  • -a, --all-tags 下载所有符合给定tag的镜像

查看用法

docker pull -h

  

下载一个 ubuntu 的镜像

docker pull ubuntu

  

默认下载的是最新的(latest)也可以指定tag去下载 如:ubuntu:16.04

镜像查看 docker images  或  docker image ls

docker images

  

只查看 ubuntu 的镜像

docker images ubuntu

  

列出 cent 开头的镜像

docker images cent*

  

列出 ubun开头的镜像

docker images ubun

  

可以看到没有找到,这是因为,在我们的本地有2个ubuntu ,这个模糊匹配功能好像只允许找一个,所以我们要加上一些条件

docker images ubun*:16.04

  

镜像删除 docker rmi / docker rm

作用:

  • 将本地的一个或多个镜像删除

命令格式:

  • docker rmi [OPTIONS] IMAGE [IMAGE...]
  • docker image rm [OPTIONS] IMAGE [IMAGE...]

命令参数(OPTIONS):

  • -f, --force 强制删除

根据 name 进行删除

docker rmi ubuntu
docker images

  

根据 IMAGE ID 进行删除 (这个可以不用写全,但要保证唯一)

 docker rmi 9f3

  

镜像保存备份  

作用:

  • 将本地的一个或多个镜像打包保存成本地tar文件(输出到STDOUT)

命令格式:

  • docker save [OPTIONS] IMAGE [IMAGE...]

命令参数(OPTIONS):

  • -o / >, --output string 指定写入的文件名和路径
docker save ubuntu:16.04  94e814 -o linux.tar

ls

  

镜像备份导入 - docker load

作用:

  • 将save命令打包的镜像导入本地镜像库中

命令格式:

  • docker load [OPTIONS]

命令参数(OPTIONS):

  • -i, --input string 指定要打入的文件,如没有指定,默认是STDIN
  • -q, --quiet 不打印导入过程信息
docker load -i linux.tar
docker images

  

在上面我们可以看到 ubuntu 18.04 的镜像 name 和 tag 都为none 这是因为我们在打包的时候,是按iamge id 进行打包的,如下

docker save ubuntu:16.04  94e814 -o linux.tar

  

所以在打包的时候尽量要用name 和 tag

镜像重命名 – docker tag

作用:

  • 对本地镜像的NAME、TAG进行重命名,并新产生一个命名后镜像

命令格式:

  • docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]

命令参数

  • (OPTIONS): 无
docker tag 94e ubuntu:18.04

  

镜像详细信息 – docker image inspect/docker inspect

作用:

  • 查看本地一个或多个镜像的详细信息

命令格式:

  • docker image inspect [OPTIONS] IMAGE [IMAGE...]
  • 或者 docker inspect [OPTIONS] IMAGE [IMAGE...]

命令参数(OPTIONS):

  • -f, --format string 利用特定Go语言的format格式输出结果
docker image inspect ubuntu:18.04

  

docker image inspect -f "{{ json .Id  }}" ubuntu:18.04

  

docker image inspect -f "{{ json .GraphDriver.Data  }}" ubuntu:18.04

  

镜像历史信息 – docker history

作用:

  • 查看本地一个镜像的历史(历史分层)信息

命令格式:

  • docker history [OPTIONS] IMAGE

命令参数(OPTIONS):

  • -H, --human 将创建时间、大小进行优化打印(默认为true)
  • -q, --quiet 只显示镜像ID --no-trunc 不缩略显示
docker history ubuntu:18.04

  

Docker 核心技术之镜像的更多相关文章

  1. Docker 核心技术之容器与镜像

    Docker容器与镜像的关系 容器提交 – docker commit docker commit -h 作用: 根据容器生成一个新的镜像 命令格式: docker commit [OPTIONS] ...

  2. Docker 核心技术与实现原理

    提到虚拟化技术,我们首先想到的一定是 Docker,经过四年的快速发展 Docker 已经成为了很多公司的标配,也不再是一个只能在开发阶段使用的玩具了.作为在生产环境中广泛应用的产品,Docker 有 ...

  3. Docker核心技术

    Docker核心技术 1.cgroup 即controller group,其重要概念是子系统,首先挂载子系统,然后才有control group.例如cpu子系统,挂载至系统之后,创建一个cgrou ...

  4. .NETCore 实现容器化Docker与私有镜像仓库管理

    原文:.NETCore 实现容器化Docker与私有镜像仓库管理 一.Docker介绍 Docker是用Go语言编写基于Linux操作系统的一些特性开发的,其提供了操作系统级别的抽象,是一种容器管理技 ...

  5. Docker的ubuntu镜像安装的容器无ifconfig和ping命令的解决

    Docker的Ubuntu镜像安装的容器无ifconfig命令和ping命令 解决: apt-get update apt install net-tools       # ifconfig apt ...

  6. 关于Docker官方CentOS镜像无法启动mysqld的总结

    很多童鞋反映,在Docker官方CentOS镜像中安装了Mysql server后,无法正常启动. 无法正常启动表现为两种情况: 1> 初始完数据库后,mysqld启动报错 2> syst ...

  7. 理解docker容器和镜像(layer,ufs)和docker命令解释

    博客好文1:http://blog.csdn.net/x931100537/article/details/49633107(理解docker容器和镜像,理解简单,从原理入手,什么是layer,什么是 ...

  8. 4.docker学习之镜像

    镜像 我们知道,我们想在Windows操作系统上跑Linux,需要安装一个虚拟机程序,然后下载一个Linux镜像,在该虚拟机程序中创建一个虚拟机,并使用该镜像安装对应的Linux操作系统,安装好之后, ...

  9. 容器与Docker简介(四)Docker容器,镜像与 Registries——微软微服务电子书翻译系列

    当使用Docker时,开发人员创建一个应用程序或服务,并将其和其依赖关系打包到容器镜像中. 镜像是应用程序或服务及其配置和依赖的静态表示形式. 要运行应用程序或服务,应用程序的镜像将被实例化以创建一个 ...

随机推荐

  1. 生产环境中学习Redis

    摘要 看到这篇文章,很有借鉴意义,因此写个读书笔记,不算是翻译.想要深入了解,请看原文http://tech.trivago.com/2017/01/25/learn-redis-the-hard-w ...

  2. [Abp vNext 源码分析] - 2. 模块系统的变化

    一.简要说明 本篇文章主要分析 Abp vNext 当中的模块系统,从类型构造层面上来看,Abp vNext 当中不再只是单纯的通过 AbpModuleManager 来管理其他的模块,它现在则是 I ...

  3. 【工利其器】必会工具之(三)systrace篇(2)

    systrace工具打开路径 以AndroidStudio(后面简写为AS),在顶部菜单栏中 Tools>Android>Android Device Monitor 打开后看到如下界面, ...

  4. Android状态栏着色

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 状态栏着色,也就是我们经常听到的沉浸式状态栏,关于沉浸式的称呼网上也有很多吐槽的,这里就不做过多讨论了,以下我们统称状态栏着色,这样 ...

  5. 五行Python代码教你用微信来控制电脑摄像头

    如果说强大的标准库奠定了Python发展的基石,丰富的第三方库则是python不断发展的保证.今天就来通过itchart库来实现通过微信对电脑的一些操作. 一.安装库 安装itchat itchat ...

  6. 前端笔记之服务器&Ajax(下)数据请求&解决跨域&三级联动&session&堆栈

    一.请求后端的JSON数据 JSON是前后端通信的交互格式,JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式. JSON是互联网各个后台与 ...

  7. SpringBoot整合Jsp和Thymeleaf (附工程)

    前言 本篇文章主要讲述SpringBoot整合Jsp以及SpringBoot整合Thymeleaf,实现一个简单的用户增删改查示例工程.事先说明,有三个项目,两个是单独整合的,一个是将它们整合在一起的 ...

  8. 10-Flink集群的高可用(搭建篇补充)

    戳更多文章: 1-Flink入门 2-本地环境搭建&构建第一个Flink应用 3-DataSet API 4-DataSteam API 5-集群部署 6-分布式缓存 7-重启策略 8-Fli ...

  9. 微信公众号开发C#系列-1、微信公众平台注册

    微信公众号简介 微信公众号分为服务号.订阅号.企业号,订阅号可以个人申请,服务号和企业号要有企业资质才可以. 我们所说的微信公众号开发主要指的是公众号的账号类型,公众号的账号类型分为订阅号.服务号.企 ...

  10. springcloud情操陶冶-bootstrapContext(二)

    承接前文监听器对bootstrapContext创建的引导,笔者了解到其主要入口类为BootstrapImportSelectorConfiguration.本文将基于此类进行简单的分析 Bootst ...