docker镜像的基本操作命令

docker运行容器前(docker run...命令运行容器)需要本地存在对应的镜像,如果镜像在本地不存在,docker会尝试先从默认镜像仓库下载(默认使用docker hub公共注册服务器中的仓库),用户也可以通过配置,使用自定义地镜像仓库。

1、获取镜像

docker pull IMAGE[:TAG]
如果不显示地指定TAG,则默认会选择latest标签,即下载仓库中最新版本的镜像。例如pull ubuntu镜像,IMAGE默认的全名为registry.hub.docker.com/ubuntu:latest,即从默认的服务器registry.hub.docker.com中的ubuntu仓库来下载标记为latest的镜像。

用户也可以选择从其他注册服务器的仓库下载,此时,需要在仓库名称前指定完整让的仓库注册服务器地址。例如从DockerPool社区的镜像源dl.dockerpool.com下载最新的ubuntu镜像:docker pull dl.dockerpool.com:5000/ubuntu

2、查看镜像信息

docker images :列出本地主机上已有的镜像信息

  • repository:来自于哪个仓库,比如ubuntu仓库
  • tag:镜像的标签信息,比如14.04
  • image id:镜像的唯一ID号
  • created:创建时间
  • virtual size:镜像大小

docker tag:为本地镜像添加新的标签。例如添加一个属于我的ubuntu标签
docker tag dl.dockerpool.com:5000/ubuntu:latest ubuntu:bamu

3、搜寻镜像

docker search TERM:搜索远端仓库中共享的镜像,默认搜索Docker Hub官方仓库中的镜像。

支持的参数如下:
--automated=false 仅显示自动创建的镜像
--no-trunc=false 输出信息不截断显示
-s, --stars=0 指定仅显示评价为指定星级以上的镜像

docker search mysql result

可以看到返回了很多包含mysql关键字的镜像,输出的结果按照星级评价进行排序。其中包括镜像名字、描述、星级、是否官方创建、是否自动创建等。官方的镜像说明该镜像是由官方项目组创建和维护的,automated资源则允许用户验证镜像的来源和用途。

4、删除镜像

docker rmi
docker rmi IMAGE [IMAGE...],其中IMAGE可以为标签或ID

  • 使用镜像标签删除镜像:docker rmi命令只是删除了该镜像多个标签中的指定标签而已,并不影响镜像文件。当镜像只剩下一个标签的时候就要小心了,此时再使用docker rmi命令会彻底删除该镜像文件。
  • 使用镜像ID删除镜像:会先尝试删除所有指向该镜像的标签,然后删除镜像文件本身。

注意:当有该镜像创建的容器存在时(无论该容器正在运行中还是已经停止),镜像文件默认是无法被删除的。

如果想要强行删除镜像,可以使用-f参数:docker rmi -f ubuntu。但不推荐使用-f参数强制删除,因为这样往往会造成一些遗留问题。假设我们使用-f参数强制删除,再次使用docker images命令查看本地镜像情况,会发现一个标签为<none>的临时镜像,原来刚才被强制删除的镜像换了新的ID继续存在系统中。

因此,正确的做法是,先删除依赖该镜像的所有容器,再删除该镜像。

5、创建镜像

创建镜像的方式有三种:

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

本节介绍前两种,第三种方式在将来的文章中详细讲解。

基于已有的容器创建

该方法使用docker commit 命令,格式为:docker commit [OPTIONS] CONTAINERS [REPOSITORY[:TAG]],参数信息如下:

  • -a, --author="" 作者信息
  • -m,--message="" 提交消息
  • -p,--pause=true 提交时暂停容器运行

实践一下:
1)启动容器并新建文件:
docker run -ti ubuntu /bin/bash
touch test
exit

此时该容器跟原镜像启动的容器相比,已经发生改变。可以使用docker commit 命令来提交为一个新的镜像,提交时可以使用ID或名称来指定容器。

2)创建新的镜像
docker commit -m "new image" -a "bamu" container01 ubuntu_bamu

3)查看本地镜像列表,即可看到新创建的镜像
docker images

本地模板导入

也可以直接从一个操作系统模板文件导入一个镜像,推荐使用OpenVZ提供的模板来创建。OpenVZ模板的下载地址为:https://openvz.org/Download/templates/precreated,通过该地址下载了一个ubuntu-14.04模板压缩包后,可以使用如下命令导入:
cat ubuntu-14.04-x86_64-minimal.tar.gz | docker import - ubuntu:14.04
然后查看新导入的镜像,已经在本地存在了。

6、存出和载入镜像

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

存出镜像

存出本地的ubuntu:14.04镜像为文件ubuntu_14.04.tar:docker save -o ubuntu_14.04.tar ubuntu:14.04

载入镜像

将文件ubuntu_14.04.tar导入镜像到本地镜像列表:docker load --input ubuntu_14.04.tar 或 docker load < ubuntu_14.04.tar
这将导入镜像以及其相关的元数据信息(包括标签等),可以使用docker images命令查看。

上传镜像

默认上传至DockerHub官方仓库(需要登录),命令格式为docker push NAME[:TAG]
用户在DockerHub网站注册后,即可上传自制的镜像,例如用户user上传本地镜像test:latest镜像,可以先添加标签user/test:latest,然后用docker push 命令上传镜像。
docker tag test:latest user/test:latest
docker push user/test:latest

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容