我已经下载了一个Docker容器,该容器使用几种不同的软件在输入文件上执行几种不同的操作,即对齐,变体调用等。如何确定Docker容器/图像的内容是什么?抱歉,如果这很琐碎,我是docker的新手。
最佳答案
有(至少)三种方式谈论您的问题:
1.列出容器中安装的软件包
获取已安装软件包列表的方式取决于分发。这里是三个最受欢迎的家庭:
Alpine 容器
使用
apk info -vv
命令:docker exec -i <container_id_1> apk info -vv | sort
基于Debian和Ubuntu的容器使用
dpkg -l
命令:docker exec -i <container_id_1> dpkg -l
基于RHEL,CentOS和Fedora的容器使用
rpm -qa
或yum list installed
命令:docker exec -i <container_id_1> rpm -qa
docker exec -i <container_id_1> yum list installed
2.探索容器的文件系统要查看目录结构,可以使用
bash
和tree
或专门为探索Docker镜像而开发的炫酷工具tree
docker exec -i <container_id_1> tree /
注意:并非所有图像都包含tree
命令。带
docker export
的tar
docker export adoring_kowalevski > contents.tar
然后,Tou可以使用您喜欢的存档器浏览contents.tar
。 IE。对于tar
:tar -tvf contents.tar
3.专用工具(浏览图像和图层OverlayFS
)瓦古德曼/潜水
wagoodman/dive: A tool for exploring each layer in a docker image
docker run --rm -it \
-v /var/run/docker.sock:/var/run/docker.sock \
wagoodman/dive:latest \
<image_name|image_id>
A tool for exploring a docker image, layer contents, and discovering ways to shrink your Docker image size.
托马斯通塞克
TomasTomecek/sen: Terminal User Interface for docker engine
docker run -v /var/run/docker.sock:/run/docker.sock -ti -e TERM tomastomecek/sen
it can interactively manage your containers and images:
贾斯汀/多克维兹
justone/dockviz: Visualizing Docker data
$ dockviz containers -d -r | dot -Tpng -o containers.png
Containers are visualized with labelled lines for links. Containers that aren't running are greyed out.
$ dockviz containers -d -r | dot -Tpng -o containers.png
关于docker - 如何列出Docker容器中包含的所有应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57803595/