侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

Docker中的镜像详细介绍

Docker  /  管理员 发布于 7年前   403

Docker中的镜像详细介绍

 Docker镜像可以理解为运行在Docker容器中的一个组件,本节将会带领大家学会Docker镜像的下载、搜索、查看、添加删除等一系列操作。Docker在运行容器前需要本地存在对应的镜像,如果镜像不存在本地,Docker会尝试从默认的远程仓库Docker Hub下载。

一、获取镜像: 

1、Docker从网络上下载镜像的格式为:

 docker pull [NAME]:[TAG]

 其中TAG即为标签,如果不指定标签的话,那么默认会下载最新版本的镜像。

 比如从Docker Hub中下载最新的ubuntu操作系统:

  docker pull ubuntu

 则docker会从Docker Hub中下载最新版本的ubuntu。

 2、指定仓库下载镜像:

  如果觉得在Docker Hub下载镜像太慢的话,可以在其它仓库下载镜像,只需要在下载的镜像前加入指定仓库的url即可

docker pull [REPOSITORY]/ubuntu

 3、使用镜像:

  因为已经下载镜像到本地了,所以可以随时使用,下面是使用该ubuntu镜像来运行ubuntu中的bash应用:

  docker run -t -i ubuntu /bin/bash

  输入exit即可退出bash应用。

二、查看镜像:

  1、命令为:

  docker images

  使用上述命令可以看出本地存在的所有镜像文件,其中, 

REPOSITORY代表来自哪个仓库,比如从Docker Hub下载ubuntu,那么直接显示ubuntu,如果是从其它仓库中下载的ubuntu,那么会显示

    REPOSITORY/ubuntu
  TAG代表镜像的标签
  IMAGE ID代表镜像的唯一ID
  CREATED代表创建时间
  VIRTUAL SIZE代表镜像的大小

  2、为镜像设置标签

   为了方便在工作中使用镜像,可以使用docker tag命令为本地镜像打标签,标签可以看做是一个别名,一个镜像可以有多个标签,但只能有一个ID

  docker tag [NAME]:[Old TAG] [NAME]:[New TAG] 

   会将本地的镜像上增加一个新的标签,即New TAG,比如:

  docker tag ubuntu:latest ubuntu:happyheng

此将本地的标签为latest的ubuntu打了一个新的标签,为happyheng。

当然,打了标签后,本地的镜像不会有任何改变,只是有了一个新的标签而已。

  3、查看镜像的详细信息:

  docker inspect [IMAGE ID]

  此可以根据镜像的id查看此镜像的详细信息

 三、搜索镜像

  docker search [NAME]

其会返回镜像的关键字,包括镜像名字、描述、星级、是否官方创建、是否自动创建等。

 四、删除镜像

  1、使用镜像的标签来删除镜像:

  docker rmi [NAME]:[TAG]

注意使用标签来删除时,如果一个镜像有两个标签,那么只删除一个是不会删除镜像的,但如果只剩下一个标签,那么删除此标签会将镜像也删除

  2、使用镜像ID来删除镜像: 

  docker rmi [ID]

注意如果有容器在使用镜像,那么是不能删除成功的。

 五、创建镜像:

创建镜像的方法有三种,分别为:

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

  1、基于已有镜像的容器创建:

该方法主要是使用docker commit [OPTIONS] [Container ID] [NAME]:[TAG]

注意CONTAINER ID是容器的id,而不是镜像的id,因为镜像是在容器中运行中发生改变,所以要为容器的id。

比如

  docker run -ti ubuntu:latest /bin/bash  root@c8ee80e08468:/# touch test  root@c8ee80e08468:/# exit

注意此时容器的id为c8ee80e08468,所以commit提交镜像时,命令为:

docker commit -m "add a new file" -a "newbee" c8ee80e08468 ubuntu:add

此为将修改的镜像提交到本地仓库中,其中提交的tag为ubuntu:add

其中:

-a  : 作者信息
-m  : 提交的信息
-p  : 提交时暂停容器运行
可以发现,这种方式与Git很相似。

 六、存出和载入镜像:

  可以使用docker save和docker load命令来存储和载入镜像。

  1、存出镜像:

  docker save -o xxx.tar [NAME]:[TAG]

  比如我想把镜像tag为ubuntu:add的镜像保存为tar包,那么就可以使用

  docker save -o ubuntu_add.tar ubuntu:add

  其中,当前终端在哪个目录,tar就保存到哪

  2、载入镜像:

  docker load --input ubuntu_add.tar

   可以将上述目录的tar镜像载入进来。

七、上传镜像

可以使用docker push命令将镜像上传至仓库,默认上传到Docker Hub官方仓库,当然需要登录:

  docker push [NAME]:[TAG]

即可将本地的镜像上传上去

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


  • 上一条:
    docker常用命令总结之安装、镜像、容器基本操作
    下一条:
    Docker 中的容器完全解析
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 在docker环境中实现Laravel项目执行定时任务和消息队列流程步骤(0个评论)
    • 在MacBook下laravel项目多php版本docker开发环境配置方案(0个评论)
    • 在docker环境中部署docker部署elk架构流程步骤(1个评论)
    • docker compose跟Dockerfile的区别浅析(0个评论)
    • Ubuntu 22.04系统中安装podman流程步骤(1个评论)
    • 近期文章
    • 智能合约Solidity学习CryptoZombie第四课:僵尸作战系统(0个评论)
    • 智能合约Solidity学习CryptoZombie第三课:组建僵尸军队(高级Solidity理论)(0个评论)
    • 智能合约Solidity学习CryptoZombie第二课:让你的僵尸猎食(0个评论)
    • 智能合约Solidity学习CryptoZombie第一课:生成一只你的僵尸(0个评论)
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2017-11
    • 2020-06
    • 2021-05
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-03
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-11
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2024-03
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客