Podman 与 Fedora 质量团队正在组织一次测试周,时间为 2026 年 10 月 12 日(周一)至 10 月 18 日(周日)。他们希望用户帮助测试 conmon v3——Podman 使用的基于 Rust 的容器监视器。如果你使用 Podman,请用 conmon v3 运行相同的容器和命令,并报告出现的任何差异。
为什么要测试 conmon v3
conmon 是一个小进程,在启动容器的 Podman 命令结束之后继续监视该容器。Podman 使用 OCI 运行时(例如 crun 或 runc)启动容器;conmon 连接容器的输入和输出,为 podman attach 提供连接,收集日志,并记录容器的退出状态。
conmon v3 用 Rust 版本替换了 C 实现。这有助于在安全代码中避免常见的内存错误。它还为各日志后端提供了统一接口,使其更易于扩展和测试。
Podman 的系统测试已经在 conmon v3 上运行。现在团队希望用户在自己的环境中帮助检查开发容器、交互式会话和 Quadlet 服务。
开始测试
团队准备了一个测试周 wiki 页面,其中包含安装说明、测试用例链接以及结果上报信息。请先从这里确认 Fedora 和软件包要求,然后使用没有重要数据的测试机或虚拟机。
使用以下命令安装新的监视器:
sudo dnf install conmon-v3
要在系统范围内选用它,请创建 /etc/containers/containers.conf.d/99-conmon-v3.conf,内容如下:
[engine]
conmon_path = ["/usr/bin/conmon-v3"]
运行 podman info,确认 conmon 路径为 /usr/bin/conmon-v3,且其版本以 3 开头。如果你同时使用无根(rootless)和 rootful Podman,也请检查 sudo podman info。用户配置可以覆盖系统设置。
做出此更改后,请启动新的测试容器。已经在运行的容器会保留原有的监视器。
测试结束后若要切换回去,请删除该 drop-in 文件。新容器随后将使用之前的配置。
需要测试的内容
以下是团队特别希望检查的方面:
- 打开交互式 shell,调整终端大小,然后分离并重新附加。
- 运行
podman exec,包括交互式命令,并检查输出和退出状态。 - 检查文件和 journald 日志,包括大量输出以及末尾没有换行的行。
- 启动、停止和重启容器,包括由 Quadlet 或 systemd 管理的服务。
- 尝试无根或 rootful Podman,以及在可用时尝试 crun 或 runc。
请留意挂起、输出缺失、退出状态不正确、异常的 CPU 占用,或与 conmon v2 不同的行为。wiki 中链接了测试用例,其中包括 conmon 相关的检查。
结果与帮助
请在测试日应用中记录你的结果。成功的测试也请记录,这能说明哪些环境已经过检查。
请在 conmon v3 问题跟踪器中报告 conmon 问题。其他 Podman 问题请按照 wiki 页面上的缺陷报告说明处理。请附上你的 Fedora 版本、相关软件包版本、复现步骤、相关日志,以及以下命令的输出:
podman info --debug
提交测试结果时请链接对应的缺陷报告。
如需测试或报告问题方面的帮助,请在 Matrix 上加入 #podman:fedoraproject.org。
本文由 Petr Sklenar 和 Jan Kaluza 共同撰写。


