Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git docker使用什么进行(图像)版本控制?_Git_Docker - Fatal编程技术网

Git docker使用什么进行(图像)版本控制?

Git docker使用什么进行(图像)版本控制?,git,docker,Git,Docker,我很好奇。对我来说,它看起来像git,但我找不到证实这一点的来源。或者它有自己的版本控制系统吗?Docker目前在内部没有将git用于任何类型的资源版本控制。然而,它确实: 依靠散列来唯一地标识文件系统层:这就是让用户觉得它像git的原因 从概念上获得初步灵感,以及 这一点非常明显的一点是docker history命令,该命令将显示组成图像的所有连续“提交”(即操作),每个操作都有一个单独的散列: $ docker history dev IMAGE CREAT

我很好奇。对我来说,它看起来像git,但我找不到证实这一点的来源。或者它有自己的版本控制系统吗?

Docker目前在内部没有将git用于任何类型的资源版本控制。然而,它确实:

  • 依靠散列来唯一地标识文件系统层:这就是让用户觉得它像git的原因
  • 从概念上获得初步灵感,以及
这一点非常明显的一点是
docker history
命令,该命令将显示组成图像的所有连续“提交”(即操作),每个操作都有一个单独的散列:

$ docker history dev
IMAGE               CREATED             CREATED BY                                      SIZE                         COMMENT
437e07e119e1        11 minutes ago      /bin/sh -c #(nop) COPY dir:3c72cf7559b6aeff6b   80.23 MB                     
92b739339069        7 hours ago         /bin/sh -c #(nop) ENTRYPOINT &{["hack/dind"]}   0 B                          
07ed6f8a66d7        7 hours ago         /bin/sh -c set -x     && git clone https://gi   4.462 MB                     
0a7eacf986e3        7 hours ago         /bin/sh -c #(nop) ENV RSRC_COMMIT=e48dbf1b7fc   0 B                          
41478ca01b73        7 hours ago         /bin/sh -c set -x                               && export GOPATH="$(mktemp   2.689 MB            
070d4d30261e        7 hours ago         /bin/sh -c #(nop) ENV TOMLV_COMMIT=9baf8a8a9f   0 B                          
e75c29475d7a        7 hours ago         /bin/sh -c set -x                               && export GOPATH="$(mktemp   3.227 MB            
857a0ec21751        7 hours ago         /bin/sh -c ./contrib/download-frozen-image.sh   3.59 MB                      
e936f5546782        7 hours ago         /bin/sh -c #(nop) COPY file:5d664ff5e9669851c   3.866 kB                     
0d12674bd0af        7 hours ago         /bin/sh -c ln -sv $PWD/contrib/completion/bas   0 B                          
ef858f6d9027        7 hours ago         /bin/sh -c ln -sfv $PWD/.bashrc ~/.bashrc       0 B                          
287721a0a2b6        7 hours ago         /bin/sh -c #(nop) ENV DOCKER_BUILDTAGS=apparm   0 B                          

最后要注意的是Docker正在向内容寻址层移动,因此这些散列不是随机生成的(就像git一样),而是唯一地标识给定内容。

图像版本控制或
Dockerfile
版本控制?或者您对docker registry server进行图像版本控制的问题?在Git的SHA-1哈希的创建中没有随机元素。它们基于提交的内容,包括树id(即文件的内容)、作者姓名、作者日期、提交者姓名、提交者日期和父提交id。