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

如何解决执行docker-compose up出现的'apparmor_parser: Unable to replace "docker-default"'错误

报错根因

该错误由宿主系统启用的AppArmor安全模块引发:Docker进程无权限加载默认的docker-default安全配置文件,导致服务容器无法完成启动流程。

解决方案

按优先级从高到低尝试以下操作即可:

  • 方案1:重启Docker服务重载配置
    执行命令重启Docker进程,恢复配置加载权限:

    sudo systemctl restart docker
    

    重启完成后重新执行docker-compose up -d验证是否恢复。

  • 方案2:手动重载Docker的AppArmor配置
    如果方案1无效,手动重新加载AppArmor中的Docker规则:

    # 先停止Docker服务
    sudo systemctl stop docker
    # 重载Docker默认AppArmor配置
    sudo apparmor_parser -r /etc/apparmor.d/docker
    # 重启Docker服务
    sudo systemctl start docker
    

    操作完成后重新启动容器栈验证。

  • 方案3:临时规避(仅适用于开发测试环境)
    不需要AppArmor安全限制的场景下,可在docker-compose.yml中为对应服务添加无限制配置,跳过AppArmor校验:

    services:
      mysql:
        # 保留原有mysql配置不变,新增以下配置
        security_opt:
          - apparmor:unconfined
      maildev:
        # 保留原有maildev配置不变,新增以下配置
        security_opt:
          - apparmor:unconfined
    

    修改后重新执行docker-compose up -d即可启动。

  • 方案4:修复组件安装异常
    如果以上方案均无效,说明Docker或AppArmor组件安装存在损坏,执行命令重装对应组件:

    sudo apt update && sudo apt install --reinstall docker.io apparmor
    

    重装完成后重启Docker服务即可恢复。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.16 15:54:09