docker生命周期

Docker 生命周期相关命令

docker create < image-id >

该命令即为在只读文件系统上添加一层可读写层「Top Layer」,并生成可读写文件系统。该命令状态下容器为静态容器,并没有运行。

docker start | restart < container-id >

该命令即为在可读写文件系统添加一个进程空间和运行的进程,并生成一个动态容器。

docker stop 即为 docker start 的逆过程。

docker run < image-id >

docker run = docker create + docker start

docker run 流程类似如下:

docker stop < container-id >

该指令向运行中的容器发一个 SIGTERM 信号,然后停止所有的进程。即为 docker start 的逆过程。

docker kill < container-id >

该指令向容器发送一个不友好的 SIGKILL 信号,相当于快速强制关闭容器。与 docker stop 的区别是 docker stop 是先发 SIGTERM 信号来清理进程,然后再发 SIGKILL 信号退出,整个进程是正常关闭的。

docker pause < container-id >

该指令用作暂停容器中的所有进程,使用 cgroup 的 freezer 顺序暂停容器里的所有进程。

docker unpause 为其逆过程即恢复所有进程,比较少使用。

docker commit < container-id >

该指令用作把容器的可读写层转化成只读层,即从容器状态「可读写文件系统」变为镜像状态「只读文件系统」,可理解为固化。

docker build

docker build = docker run 「运行容器 + 进程修改数据」+ docker commit「固化数据」,整个过程不断循环直至生成所需镜像。

循环一次便会形成一个新的层(新镜像 = 原镜像层 + 已固化的可读写层)

docker build 过程一般通过 dockerfile 文件来实现。

Docker 查询类命令

Docker 可查询的对象有:image、container、image/container 中的数据、系统信息(包括容器数、镜像数及其它)。

docker images

该指令用作列出镜像的顶层镜像(以顶层镜像 ID 来表示整个完整镜像),每个顶层镜像下面隐藏多个镜像层。

docker images -a

该指令用作列出镜像的所有镜像层。镜像层的排序以每个顶层镜像 ID 为首,依次列出每个镜像下的所有镜像层。

docker history < image-id >

该指令列出该镜像 ID 下的所有历史镜像。

docker ps

该指令用作列出所有运行中的容器。

docker ps -a

该指令用作列出所有容器,包括静态容器和动态容器。

docker inspect < container-id > or < image-id >

该指令用作提取出容器或镜像中最顶层的元数据。

docker info

该指令用作显示 Docker 系统信息,包括镜像和容器数。

Docker 操作类命令

docker rm < container-id >

该指令用作移除容器,默认只能对静态容器(非运行状态的)进行移除。如果要移除运行中的容器,需要使用 -f(force) 参数,即:docker rm -f <container-id>。

docker rmi < image-id >

该指令作用与 docker rm 类似,用作移除镜像。

docker exec < running-container-id >

该指令用于在运行状态的容器中执行一个新的进程。

docker export < container-id >

该指令用作持久化一个容器,会创建一个 tar 格式的文件。该文件移除了元数据和不必要的层,将多个层整合成了一个层,只保存了当前统一视角看到的内容。

如果你要持久化一个镜像,可以使用 docker save 指令。它与 docker export 的区别在于其保留了所有元数据和历史层。

通过 docker export 导出的容器再 docker import 到 Docker 中后,在 docker images –tree 命令只能看到一个镜像。而通过 docker save 保存后的镜像则不同,它能够看到这个镜像构建过程中的所有历史层。

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

推荐阅读更多精彩内容

  • 一、Docker 简介 Docker 两个主要部件:Docker: 开源的容器虚拟化平台Docker Hub: 用...
    R_X阅读 4,390评论 0 27
  • 《Docker从入门到实践》阅读笔记 原书地址: https://yeasy.gitbooks.io/docker...
    GuoYuebo阅读 11,389评论 1 39
  • docker常用命令原理图概览: 按照docker官网上的说法,docker的文件系统分为两层:bootfs和ro...
    燕京博士阅读 2,964评论 2 32
  • docker基本概念 1. Image Definition 镜像 Image 就是一堆只读层 read-only...
    慢清尘阅读 8,759评论 1 21
  • 有没有一种感觉,好像老在做一些琐事; 有没有一种感觉,好像老在重复的做一些事情; 有没有一种感觉,好像自己的工作既...
    蒋萍coach阅读 1,287评论 0 0