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

Ansible Navigator执行环境运行5分03秒后崩溃(Docker+macOS)求助

调试Ansible Navigator封装Docker容器超时退出问题的可行方法
  • 调整Ansible Navigator超时配置
    当前容器精准在5分03秒后退出,大概率是触发了默认超时限制。可以通过配置文件或命令行参数延长超时时间:

    • 修改ansible-navigator.yml或~/.ansible-navigator.yml:
      execution-environment:
        timeout: 3000
      
    • 命令行临时覆盖:ansible-navigator run playbook.yml --ee-timeout 3000
  • 保留崩溃后的容器用于调试
    默认情况下Ansible Navigator会在任务结束后销毁容器,开启容器保留模式即可事后进入容器排查:

    • 配置文件添加:
      execution-environment:
        cleanup: false
      
    • 命令行参数:ansible-navigator run playbook.yml --ee-cleanup false
    • 容器保留后,用docker ps -a找到目标容器ID,执行docker exec -it <container_id> /bin/bash进入容器查看环境、残留日志。
  • 提升Ansible日志详细度
    增加日志 verbosity 获取崩溃前的执行细节,避免日志中断丢失关键信息:

    • 运行时添加多级 verbose 参数:ansible-navigator run playbook.yml -vvvv
    • 同时将日志输出到文件:ansible-navigator run playbook.yml -vvvv > ansible_debug.log 2>&1
  • 拆分Playbook定位触发任务
    既然单独执行Role正常,说明是多Role组合后的特定步骤导致问题。逐步拆分Playbook,每次添加少量任务,直到复现崩溃,定位到具体触发的任务或操作组合。

  • 检查Docker资源限制
    macOS上Docker默认有CPU、内存配额,配置内容增多后可能因资源不足触发超时:
    打开Docker Desktop → Settings → Resources,调高CPU、内存分配(例如内存设为8GB以上),重启Docker后重新测试。

  • 替换基础镜像验证
    怀疑Fedora 39镜像存在问题时,更换为其他稳定镜像测试:

    • 修改执行环境定义文件execution-environment.yml的基础镜像:
      base_image: quay.io/centos/centos:stream9
      
    • 重新构建执行环境:ansible-builder build -t custom-ee:latest,再用新镜像运行任务。
  • 实时监控容器运行状态
    任务运行时新开终端,实时跟踪容器状态:

    • 用docker stats查看CPU、内存、磁盘IO使用率,排查资源耗尽情况;
    • 用docker logs -f <container_id>实时输出容器日志,捕捉崩溃前的最后执行记录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 14:31:08