安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

详解Docker你需要知道的Docker进阶知识二

8月24日 亡命徒投稿
  Docker镜像
  镜像仓库(Repository)用于存放镜像,每个仓库都有唯一的地址,和网址类似。镜像仓库托管在某个Registry,Registry和GitHub类似。Docker提供了一个官方的Registry,官方Registry里的镜像仓库地址可以省去前面的域名前缀,其它Registry里的镜像仓库地址必须要指定域名前缀,以保证唯一性。
  镜像仓库地址后面可以跟一个TAG。比如一个镜像名称ubuntu:14。04,冒号前面的ubuntu是镜像仓库地址(由于是官方Registry里的,可以省略域名前缀),后面的14。04是TAG,TAG通常设置为镜像的版本号。
  Docker镜像是分层存储的,每一个镜像都由多层组成。镜像之间会共享一些相同的层,从而减小镜像占用的存储空间。查看docker镜像〔rootVM017centos〕dockerimagelsREPOSITORYTAGIMAGEIDCREATEDSIZEflaskapp0。11aa01015fcfd3daysago188MBpython3。7slim84de2ffd919d10daysago179MBweblatest15f1f39a08482weeksago76。2MB
  也可以查看指定的镜像:〔rootVM017centos〕dockerimagelsubuntuREPOSITORYTAGIMAGEIDCREATEDSIZEubuntulatestccc6e87d482b7weeksago64。2MBubuntu14。046e4f1fe62ff12monthsago197MB
  查看镜像的详细信息〔rootVM017centos〕dockerimageinspectubuntu〔{Id:sha256:ccc6e87d482b79dd1645affd958479139486e47191dfe7a997c862d89cd8b4c0,RepoTags:〔ubuntu:latest〕。。。。。。从仓库中拉取镜像dockerpull〔OPTIONS〕NAME〔:TAGDIGEST〕
  比较常用的配置参数为a,代表下载仓库中所有TAG的镜像,默认只下载latestTAG的镜像。
  如果要下载ubuntu:14。04镜像,可使用如下命令:〔rootVM017centosdocker〕dockerimagepullubuntu:14。0414。04:Pullingfromlibraryubuntu2e6e20c8e2e6:Pullcomplete30bb187ac3fc:Pullcompleteb7a5bcc4a58a:PullcompleteDigest:sha256:ffc76f71dd8be8c9e222d420dc96901a07b61616689a44c7b3ef6a10b7213de4Status:Downloadednewerimageforubuntu:14。04docker。iolibraryubuntu:14。04〔rootVM017centosdocker〕dockerimagelsubuntuREPOSITORYTAGIMAGEIDCREATEDSIZEubuntu14。046e4f1fe62ff12monthsago197MB构建镜像commit
  对于我们pull的新镜像ubuntu:14。04来说,如果我们需要对其进行更新,可以创建一个容器,在容器中进行修改,然后将修改提交到一个新的镜像中。
  提交修改使用如下命令:dockercontainercommit〔OPTIONS〕CONTAINER〔REPOSITORY〔:TAG〕〕
  该命令从一个修改过的容器创建一个新的镜像。例如,我们运行一个容器,然后在其中创建一个文件,最后使用commit命令:〔rootVM017centosimage〕dockercontainerrunitnamehellodocker2busyboxbinshtouchtest1test2〔rootVM017centosimage〕dockercontainercommithellodocker2busybox:testsha256:1e30e8ed656966581812d4d23b5196edcc45d38affc20454cafa46d41f45a0e0〔rootVM017centosimage〕dockerimagelsbusyboxREPOSITORYTAGIMAGEIDCREATEDSIZEbusyboxtest1e30e8ed656910secondsago1。22MBbusyboxlatest6d5fcfe5ff172monthsago1。22MB
  通过上述操作我们创建了一个新的镜像,但是本方法不推荐在生产环境使用,因为这种方式的可维护性很差。推荐的创建镜像的方法是使用Dockerfile,修改镜像可通过修改Dockerfile,然后使用新的Dockerfile来构建新的镜像。build
  docker可以从一个Dockerfile文件中读取指令来构建镜像。Dockerfile是一个包含用户构建镜像所需命令的文本文件。在创建好该文件后,我们可以使用如下命令来构建镜像:dockerimagebuild〔OPTIONS〕PATHURL
  构建镜像的第一件事是将Dockerfile文件所在目录下的所有内容发送给Docker守护进程。所以最好创建一个新的目录,在其中保存Dockerfile,并在其中添加构建镜像所需的其它文件。
  对于一个Dockerfile文件内容来说,基本语法格式如下所示:CommentINSTRUCTIONarguments
  使用号作为注释,指令(INSTRUCTION)不区分大小写,但是为了可读性,一般将其大写。Dockerfile中的指令一般包含下面几个部分:基础镜像:以哪个镜像为基础进行制作,使用FROM指令来指定基础镜像,一个Dockerfile必须以FROM指令启动。维护者信息:可以指定该Dockerfile编写人的姓名及邮箱,使用MAINTAINER指令。镜像操作命令:对基础镜像进行修改的命令,比如安装新的软件,进行配置等,常见的是RUN命令。容器启动命令:基于该镜像的容器启动时需要执行的命令,常见的是CMD命令或ENTRYPOINT
  下面是一个最基本的Dockerfile:指定基础镜像FROMubuntu:14。04维护者信息MAINTAINERhellodockerhellodockersoundhearer。com镜像操作命令RUNaptgetyqqupdateaptgetinstallyqqapache2容器启动命令CMD〔usrsbinapache2ctl,D,FOREGROUND〕
  通过阅读上述内容中我们熟悉的一些linux指令,可以很容易的知道该Dockerfile将创建一个apache镜像。
  其中FROM指定基础镜像。RUN命令默认使用binsh,并使用root权限执行。CMD命令也是默认在binsh中执行,但是只能有一条CMD指令,如果有多条则只有最后一条会被执行。
  下面我们创建一个空目录,在其中编辑Dockerfile文件,然后基于此文件构建一个新的镜像:首先创建目录并切换目录mkdirhomehellodockertest1cdhomehellodockertest1编辑Dockerfile文件,默认文件名为Dockerfile,也可以使用其它值,使用其它值需要在构建时通过f参数指定,这里我们使用默认值。并在其中添加上述示例的内容vimDockerfile使用build命令,t参数指定新的镜像dockerimagebuildthellodocker:2。0。
  在构建完成后,我们可以使用该镜像启动一个容器来运行apache服务,运行如下命令:使用p参数将本机的8000端口映射到容器中的80端口上。dockercontainerrundp8000:80namehellodocker3hellodocker:2。0
  此时,容器启动成功后,并且配置了端口映射,我们就可以通过本机的8000端口访问容器hellodocker3中的apache服务了。我们打开浏览器,输入localhost:8000删除
  删除ubuntu:latest镜像可以使用如下命令:删除镜像dockerimagermubuntu
  删除所有的镜像dockerrmi(dockerimagesq)
投诉 评论 转载

董明珠手机之心不死,格力上新,网友开机界面没董小姐就不买董小姐做手机是认真的,哪怕没人买,也要毫不犹豫、锲而不舍发布新产品,刷刷存在感。近日,工信部电信设备认证中心官网曝光了格力最新手机的信息。该款手机是大松旗下的一款旗舰机型……有哪些有意思的微信小程序?小程序爱好者,喜欢发掘各种实用好玩的小程序,定期更新和大家一起分享,喜欢的赶紧收藏起来!如何使用微信小程序?小程序不用下载不费内存,打开微信就能用,那么多实用好玩的……逼着买大内存?iPhone13Pro或取消256G版本,果粉时间过得总是那么快,转眼间已是2021年9月份,科技圈最让人瞩目的大事就要发生了!一年一度的苹果发布会就要如约而至,现在关于iPhone13的各种爆料也越来越多。总体来说……详解Docker你需要知道的Docker进阶知识二Docker镜像镜像仓库(Repository)用于存放镜像,每个仓库都有唯一的地址,和网址类似。镜像仓库托管在某个Registry,Registry和GitHub类似。……手慢无600元到手小米电视,卧式必备神器搜罗全网俏数码尖儿货,分享抢购经验,手把手教你羊毛如何薅,尽在ZOL全新栏目《手慢无》。每天晚上手持手机看视频总是被打脸,你可能需要一台卧式专用电视,轻松解放双手,比如这……才貌双全的超大杯OPPOReno6Pro全面评测一直以来,OPPOReno系列产品凭借超高的颜值以及卓越的影像能力深受消费者的热捧,这也让我们对全新的OPPOReno6系列产品充满期待。今天,我们就一起来聊聊OPPOReno……发布至今下跌3200元,12GB256GB,2K全视屏旗舰无以前手机屏幕上最重要的参数是分辨率,但是现如今手机屏幕上最重要的参数却已经是变成了刷新率,消费者们选购手机的时候,分辨率不高没事,但一定要支持高刷,这是因为高刷新率确实会非常直……区块链图灵完备图灵完备是指一台机器,只要有足够的时间和内存以及必要的指令,就可以解决任何计算问题,无论多么复杂。该术语通常用于描述现代编程语言,因为它们中的大多数是图灵完备的(C、Pytho……人工智能的未来已来,人类将何去何从?人类命运共同体目前,人工智能在发展中也面临三大挑战。第一大挑战是让机器在没有人类教师的帮助下学习。让机器无须在每次输入新数据或者测试算法时都从头从新开始新的学习。然而,目前的人工智能在这方面……荣耀手机2022年04月02日新消息荣耀手机荣耀手机2022年04月02日新消息首销摘冠逆势热售荣耀Magic4携手供应链技术攻坚上探行业高标准荣耀Magic4Pro:性能、影像、安全……怎么辨别转转平台上验机报告的真假?之前看到很多人说自己买airpods翻车了,所以我来说一下我自己是怎么去辨别自己手上的airpods是真是假的。1、真的AirPods,它的充电仓盖里是有检测……为定制式助听器用户取的耳样怎样才算是合格的?一、工具及材料:检耳镜、耳灯、镊子、棉签、带线棉花球、小勺、注射器、耳样膏。二、步骤:1。仔细检查耳道;2。放置带线棉花球;3。混合耳样材料;4。注射耳样材料;5。取出耳样;6……
还在为买药难而烦恼吗?智能采购了解一下打通快递最后一百米监管需介入最前一百米超级能打,比亚迪新能源乘用车9月销售70022辆在三体最后程心乘光速飞船逃离地球时,去到287光年外的星球,俄乌战争对加密货币的影响美媒非洲外交官向中国消费者直播带货,卢旺达驻华大使变身快递小2021年了,iPhonexs还值不值得入手?高通骁龙处理器排行榜汇总亚马逊揭秘,为什么推品会失败?动力电池回收废料价格贵过新货呼叫中心客服系统的大数据分析捷讯通信为什么发现UFO(不明飞行物)的消息越来越少了?

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利