You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle Linux 9(rootless)下podman-auto-update报‘pod无infra容器’错误

在Oracle Linux 9(aarch64)无权限环境配置podman-auto-update的问题及进展

我在Oracle Linux 9(aarch64)的无权限(rootless)虚拟机上配置podman-auto-update时,每次执行更新都会收到所有容器的报错:pod has no infra container: no such container。之前在Ubuntu和Debian系统上该功能可以正常运行,这是我第一次在Oracle Linux上操作。

已完成的基础配置:

  • 为每个服务添加io.containers.autoupdate: "registry"标签
  • 启动并启用podman-auto-update.timer服务
  • 创建~/.config/systemd/user目录用于存放unit文件
  • 创建~/.config/containers/systemd目录用于存放quadlet文件

尝试过的解决方案

  1. 使用docker-compose.yaml和podman-compose启动容器,通过命令podman generate systemd --new --name --files "${container_name}"生成unit文件,启用并启动服务后执行podman auto-update --dry-run,仍出现相同报错。
  2. 基于运行中的容器,使用podlet工具生成.container文件并放置到对应目录,重载systemd daemon并启动服务,执行podman-auto-update依旧报错。
  3. 使用podman-compose内置命令podman-compose systemd -a register生成unit文件,启动服务后执行podman-auto-update,问题依然存在。

我刚从Docker迁移到Podman,查阅资料后认为该功能应该可以正常运行,推测可能忽略了Oracle Linux与Debian系系统的差异,但对照Oracle官方指南的步骤,我的操作完全一致。

更新:问题定位与临时解决方法

已部分定位问题:podman-compose运行compose文件时会自动生成无infra ID的pod。尝试创建infra=true的pod及使用quadlet文件仍无法让auto-update正常工作,但使用podman-compose up --in-pod=0启动容器并生成传统systemd unit文件后,podman-auto-update已可正常运行。

附相关代码示例

  • podman ps输出
  • pod ps输出
  • docker-compose.yaml内容
  • podman版本信息
  • .container文件示例
  • unit文件示例

内容的提问来源于stack exchange,提问作者Timothy Bryant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 14:55:05