2016 - 2024

感恩一路有你

docker命令找到镜像文件目录 Docker框架由哪几个部分组成?

浏览量:3257 时间:2023-05-14 23:34:05 作者:采采

Docker框架由哪几个部分组成?

Docker架构

Docker以及三个基本概念:

镜像(Image):Docker镜像(Image),就普通是一个root文件系统。.例如官方镜像ubuntu:16.04就乾坤二卦了求全部的一套Ubuntu16.04最大时系统的root文件系统。

容器(Container):镜像(Image)和容器(Container)的关系,得象是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以不被创建战队、起动、再继续、删除掉、先暂停等。

仓库(Repository):仓库可正数集合一个代码控制中心,为了需要保存镜像。

Docker在用客户端-服务器(C/S)架构模式,建议使用远程API来管理呀和创建家族Docker容器。

Docker容器是从Docker镜像来创建。

Docker镜像和容器的区别详解?

当想让一个容器做两件事情,也可以使一个Docker镜像真包含来自两个差别镜像的依赖库时,就必须知道每个镜像的Dockerfile。本文可以介绍了如何命令来对Docker镜像接受反向工程,得到它们的Dockerfile,并参与到一个Dockerfile里然后再rebuild,使基于想做的事儿。

常言道,“不要反复重复发明轮子!”

在可以使用Docker时,构建体系自己的镜像之前,最好是在DockerHub寻找一些可以不就在用的镜像做练习练习。把软件架构分布特点到一系列容器中,每一个容器只做一件事情,这样的效果更加好。构建分布式应用方法的好是的基石是不使用不知从何而来DockerHub的官方镜像,因为也可以无条件的信任它们的质量。

在某些情况下,很有可能想让一个容器做两件相同的事情。而在另外一些情况下,很有可能想让一个Docker镜像包含无论是两个有所不同镜像的依赖库。要是有每个镜像的Dockerfile,这是的很简单点。将它们内部到一个Dockerfile里然后rebuild就行。

但这,大多数时间都在可以使用DockerHub上准备好的镜像,应该不会有它们的源Dockerfile。我花时间找一个可以不合并(或flatten)两个差别Docker镜像的工具,不过没有它们的Dockerfile。也就是说在找一个可以做下面这件事的东西:

image1--

---gtmerged_image_12

/

image2--

此前在GitHub上有两个相关的继续讨论(1、2),事实上它们都被关闭了。

这可能吗?

那就,有无未知工具能够像这样做吗:dockermergeimage2image2merged_image?

还没有!

你甚至是可以用下面的来形成完整Dockerfile:

FROMimage1

FROMimage2

简单说来,在一个Dockerfile里不能不能有多个基础镜像。

只不过我需要这个功能!

唯一的该怎么解决是提出这些镜像的Dockerfile,接着把它们组织后到一个文件中,再通过统合。那就,我能在DockerHub上完成任务一个镜像的Dockerfile吗?幸运的是可以。它不能不联网声望兑换(译注:原文是online,但想来gambling时相对于充斥GitHub的不自动形成完整镜像是可以就声望兑换的),不过你这个可以在用dockerhistory命令,是从反向工程某些。

怎么来建议使用?

在你的机器上在用dockerpull从DockerHub去下载镜像。

dockerpullimage1

dockerpullimage2

然后再在用dockerhistory来提出构建这两个容器时启动的命令。

dockerhistory--so-trunctrueimagegtimage1-dockerfile

dockerhistory--no,no-trunctrueimage2gtimage2-dockerfile

这一次先打开这两个文件,你可以清晰的看到每个镜像的命令内存映射。这是是因为Docker镜像实际层(阅读更多)的来统合。即你在Dockerfile中框输入的每一个命令所构建的新镜像,全是在之前的命令出现的镜像之上。因此你可以对镜像并且逆向工程。

限制下载

又不能对镜像并且反向工程的仅有场景,是镜像的维护者在他的Dockerfile中可以使用了ADD或COPY命令。你会看见那样一行:

ADDfile:1ac56373f7983caf22

或ADDdir:cf6fe659e9d21535844

这是因为真不知道能维护者在他自己的机器上,除了镜像里可以使用了什么本地文件。

镜像 Docker Dockerfile 容器 DockerHub

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。