关于Docker里面的几个主要概念
这里用个不太恰当的比方来说明。
大家肯定安装过ghost系统,镜像就像是ghost文件,容器就像是ghost系统。你可以拿别人的ghost文件安装系统(使用镜像运行容器),也可以把自己现有的系统制作成ghost文件(从容器构建镜像)。Dockerfile则像是一个生成ghost文件的脚本(镜像构建脚本),这个脚本会指定去哪里下载哪个版本的window系统,再去哪里下载哪些软件并安装,再修改哪些配置文件,等等。本文主要讲的是,如何从容器构建镜像(把现有系统制作成ghost文件),和如何使用Dockerfile构建镜像(使用脚本生成ghost文件)。
两种方式构建镜像的主要步骤:
1、从容器构建镜像(以下简称容器镜像)
创建一个容器,比如使用tomcat:latest镜像创建一个tomcat-test容器
修改tomcat-test容器的文件系统,比如修改tomcat的server.xml文件中的默认端口
使用commit命令提交镜像
2、使用Dockerfile构建镜像(以下简称Dockerfile镜像)
编写Dockerfile文件
使用build命令构建镜像
两种构建方式的区别:
1、容器镜像的构建者可以任意修改容器的文件系统后进行发布,这种修改对于镜像使用者来说是不透明的,镜像构建者一般也不会将对容器文件系统的每一步修改,记录进文档中,供镜像使用者参考。
2、容器镜像不能(更准确地说是不建议)通过修改,生成新的容器镜像。
从镜像运行容器,实际上是在镜像顶部上加了一层可写层,所有对容器文件系统的修改,都在这一层中进行,不影响已经存在的层。比如在容器中删除一个1G的文件,从用户的角度看,容器中该文件已经没有了,但从文件系统的角度看,文件其实还在,只不过在顶层中标记该文件已被删除,当然这个标记为已删除的文件还会占用镜像空间。从容器构建镜像,实际上是把容器的顶层固化到镜像中。
也就是说, 对容器镜像进行修改后,生成新的容器镜像,会多一层,而且体积只会增大,不会减小。长此以往,镜像将变得越来越臃肿。Docker提供的export和import命令可以一定程度上处理该问题,但也并不是没有缺点。
3、容器镜像依赖的父镜像变化时,容器镜像必须进行重新构建。如果没有编写自动化构建脚本,而是手工构建的,那么又要重新修改容器的文件系统,再进行构建,这些重复劳动其实是没有价值的。
4、Dockerfile镜像是完全透明的,所有用于构建镜像的指令都可以通过Dockerfile看到。甚至你还可以递归找到本镜像的任何父镜像的构建指令。也就是说,你可以完全了解一个镜像是如何从零开始,通过一条条指令构建出来的。
5、Dockerfile镜像需要修改时,可以通过修改Dockerfile中的指令,再重新构建生成,没有任何问题。
6、Dockerfile可以在GitHub等源码管理网站上进行托管,DockerHub自动关联源码进行构建。当你的Dockerfile变动,或者依赖的父镜像变动,都会触发镜像的自动构建,非常方便。
不管是官方还是我个人,都推荐使用第二种方式构建镜像。
关于Dockerfile里面指令的详细说明,这里就不一一列出了,大家可以参考官方文档,或关注我之后的文章,当然网上也是一搜一大堆。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
Docker,镜像
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新动态
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]