use*_*975 8 docker docker-container
如何使用Docker客户端找到两个正在运行的容器之间的区别?我有一个图像作为多个实例运行,后来我在实例中更改/安装了新包并丢失了跟踪.有没有办法可以找到这些运行容器之间的差异?
您正在寻找docker diff命令,该命令列出了容器文件系统自创建以来所做的更改。
以这个例子为例,其中创建了一个名为so-26230214的新容器,然后/tmp/foo.txt添加文件并最终/etc/default/ntpdate删除:
$ docker run -it --name so-26230214 base bash -il
root@b33340ce7b9f:/# echo "foo" > /tmp/foo.txt
root@b33340ce7b9f:/# rm /etc/default/ntpdate
root@b33340ce7b9f:/# logout
Run Code Online (Sandbox Code Playgroud)
该docker diff命令打印出:
$ docker diff so-26230214
C /etc
C /etc/default
D /etc/default/ntpdate
C /root
A /root/.bash_history
C /tmp
A /tmp/foo.txt
Run Code Online (Sandbox Code Playgroud)
detailling哪些文件被ç绞死,一个dded或d eleted。
如果您需要有关这些文件中更改内容的详细信息,那么您别无选择,只能使用docker export导出容器文件系统或使用docker cp导出单个文件并检查它们。
请注意,docker export并且docker cp只会向您显示属于容器文件系统的文件,因此这些命令不会让您访问卷中的文件。
你必须检查容器
docker inspect CONTAINER_1
docker inspect CONTAINER_2
Run Code Online (Sandbox Code Playgroud)
找到每个片段的片段
"Id": "cc502eeb69968c9b80c029f8124333d725ee124db4357de69786bc9bdf3a8088",
然后使用拖车 ID,您可以比较文件夹
/var/lib/docker/aufs/mnt/CONTAINER_1 vs /var/lib/docker/aufs/mnt/CONTAINER_2
| 归档时间: |
|
| 查看次数: |
3080 次 |
| 最近记录: |