跳到内容跳到页面导航:上一页 [access key p]/下一页 [access key n]
documentation.suse.com / 容器指南 / 查错
适用范围 容器指南

16 查错

16.1 使用 container-diff 分析容器映像

如果基于 SLE 基本容器映像构建的自定义 Docker 开源引擎容器映像无法按预期方式工作,您可以借助container-diff 工具来分析该映像并收集用于查错的相关信息。

container-diff 可以分析映像的变化,具体方式是计算映像之间的差异并以直观易懂且可处理的格式呈现差异。该工具可以找出系统软件包、语言级软件包和容器映像中文件的差异。

container-diff 可以处理本地容器映像(使用前缀 daemon://)、远程注册表中的映像(使用前缀 remote://),以及另存为 .tar 存档的映像。可以使用 container-diff 来计算映像的本地版本与远程版本之间的差异。

要安装 container-diff,请运行 sudo zypper in container-diff 命令。

16.1.1 基本 container-diff 命令

命令 container-diff analyze IMAGE 对单个映像运行标准分析。它默认会返回容器映像的哈希和大小。如需可帮助您识别和修复问题的详细信息,请使用特定的分析器。使用 --type 参数指定所需的分析器。两个最有用的分析器是 history(返回映像层创建说明列表)和 file(返回文件系统内容的列表,包括名称、路径和大小):

> sudo container-diff analyze --type=history daemon://IMAGE
> sudo container-diff analyze --type=file daemon://IMAGE

要查看所有可用参数及其简要说明,请运行 container-diff analyze --help 命令。

使用 container-diff diff 命令可以比较两个容器映像并检查两者的差异。类似于 container-diff analyze 命令,container-diff diff 支持多个参数。下面的示例命令会比较两个映像,并返回有关如何基于 IMAGE_1 创建了 IMAGE_2 的说明列表。

> sudo container-diff diff daemon://IMAGE_1 daemon://IMAGE_2 --type=history

要查看所有可用参数及其简要说明,请运行 container-diff diff --help 命令。