Docker 核心技术之镜像
镜像简介
镜像是一个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 核心技术之镜像的更多相关文章
- Docker 核心技术之容器与镜像
Docker容器与镜像的关系 容器提交 – docker commit docker commit -h 作用: 根据容器生成一个新的镜像 命令格式: docker commit [OPTIONS] ...
- Docker 核心技术与实现原理
提到虚拟化技术,我们首先想到的一定是 Docker,经过四年的快速发展 Docker 已经成为了很多公司的标配,也不再是一个只能在开发阶段使用的玩具了.作为在生产环境中广泛应用的产品,Docker 有 ...
- Docker核心技术
Docker核心技术 1.cgroup 即controller group,其重要概念是子系统,首先挂载子系统,然后才有control group.例如cpu子系统,挂载至系统之后,创建一个cgrou ...
- .NETCore 实现容器化Docker与私有镜像仓库管理
原文:.NETCore 实现容器化Docker与私有镜像仓库管理 一.Docker介绍 Docker是用Go语言编写基于Linux操作系统的一些特性开发的,其提供了操作系统级别的抽象,是一种容器管理技 ...
- Docker的ubuntu镜像安装的容器无ifconfig和ping命令的解决
Docker的Ubuntu镜像安装的容器无ifconfig命令和ping命令 解决: apt-get update apt install net-tools # ifconfig apt ...
- 关于Docker官方CentOS镜像无法启动mysqld的总结
很多童鞋反映,在Docker官方CentOS镜像中安装了Mysql server后,无法正常启动. 无法正常启动表现为两种情况: 1> 初始完数据库后,mysqld启动报错 2> syst ...
- 理解docker容器和镜像(layer,ufs)和docker命令解释
博客好文1:http://blog.csdn.net/x931100537/article/details/49633107(理解docker容器和镜像,理解简单,从原理入手,什么是layer,什么是 ...
- 4.docker学习之镜像
镜像 我们知道,我们想在Windows操作系统上跑Linux,需要安装一个虚拟机程序,然后下载一个Linux镜像,在该虚拟机程序中创建一个虚拟机,并使用该镜像安装对应的Linux操作系统,安装好之后, ...
- 容器与Docker简介(四)Docker容器,镜像与 Registries——微软微服务电子书翻译系列
当使用Docker时,开发人员创建一个应用程序或服务,并将其和其依赖关系打包到容器镜像中. 镜像是应用程序或服务及其配置和依赖的静态表示形式. 要运行应用程序或服务,应用程序的镜像将被实例化以创建一个 ...
随机推荐
- Python爬虫入门教程 45-100 Charles抓取兔儿故事-下载小猪佩奇故事-手机APP爬虫部分
1. Charles抓取兔儿故事背景介绍 之前已经安装了Charles,接下来我将用两篇博客简单写一下关于Charles的使用,今天抓取一下兔儿故事里面关于小猪佩奇的故事. 爬虫编写起来核心的重点是分 ...
- SpringBoot集成rabbitmq(二)
前言 在使用rabbitmq时,我们可以通过消息持久化来解决服务器因异常崩溃而造成的消息丢失.除此之外,我们还会遇到一个问题,当消息生产者发消息发送出去后,消息到底有没有正确到达服务器呢?如果不进行特 ...
- 委托的多线程方法BeginInvoke
同步方法和异步方法: 同步方法调用在程序继续执行之前需要等待同步方法执行完毕返回结果.(比如烧水泡茶,需要等水烧开了才能继续泡茶) 异步方法则在被调用之后立即返回以便程序在被调用方法完成其任务的同时执 ...
- 使用Python画玫瑰花
''' Created on Nov 18, 2017 @author: QiZhao ''' import turtle # 设置初始位置 turtle.penup() turtle.left(90 ...
- Centos7下用FastDFS搭建图片服务器
1.所用到的工具: 1.FastDFS_v5.05.tar 2.fastdfs-nginx-module_v1.16.tar 3.libfastcommonV1.0.7.tar 4.nginx-1.1 ...
- flex页面布局练习--知乎
采用flexbox弹性容器 在手机端进行页面布局 样本地址: http://tpl.zhuamimi.cn/%E6%89%8B%E6%9C%BA%E7%AB%AF%E9%A1%B5%E9%9D%A2- ...
- 小米平板6.0系统如何无ROOT激活xposed框架的步骤
在较多企业的引流,或业务操作中,基本上都需要使用安卓的黑高科技术Xposed框架,近期,我们企业购买了一批新的小米平板6.0系统,基本上都都是基于7.0以上系统,基本上都不能够获得ROOT的su权限, ...
- Docker-Linux环境安装
不同服务器操作系统安装命令不同,例如centOS默认用yum,Ubuntu可能默认用apt-get.这里推荐一种安装方式,通过下载shell脚本 https://get.docker.com,会检测操 ...
- Eclipse 模板
Eclipse 的模板:推荐一个好的内容 设置注释模板的入口:Window->Preference->Java->Code Style->Code Template 然后展开C ...
- androidkiller连接模拟器并修改源码调试
首先需要连接模拟器,首先在模拟器的bin目录下运行命令:nox_adb.exe connect 127.0.0.1:62001(可以disconnect关闭): 之后在androidkiller的bi ...