AI摘要

Dify安装Markdown转换器插件失败,原因是插件容器缺少cairo依赖和pkg-config工具,导致pycairo编译失败。通过进入插件容器并执行apt update后安装cmake、pkg-config、libcairo2-dev等依赖项,成功解决问题。

1.软件环境

Docker方式部署 Dify1.8.0
Dify版本信息

Dify版本信息

2.故障现象

Web插件安装报错

Web插件安装报错

3.排查方式

找到dify插件容器

langgenius/dify-plugin-daemon:0.2.0-local

查看容器日志

2026/01/27 10:48:05 full_duplex.go:65: [ERROR]init environment failed: failed to install dependencies: exit status 1, output: Resolved 81 packages in 725ms
Building pycairo==1.29.0
× Failed to build `pycairo==1.29.0`
├─▶ The build backend returned an error
╰─▶ Call to `mesonpy.build_wheel` failed (exit status: 1)
Did not find pkg-config by name 'pkg-config'
Found pkg-config: NO
Did not find CMake 'cmake'
Found CMake: NO
Run-time dependency cairo found: NO
../cairo/meson.build:31:12: ERROR: Dependency lookup for cairo with method 'pkgconfig' failed: Pkg-config for machine host machine not found. Giving up.
hint: This usually indicates a problem with the package or the build environment.
help: `pycairo` (v1.29.0) was included because `xhtml2pdf` (v0.2.17) depends on `svglib` (v1.6.0) which depends on `rlpycairo` (v0.4.0) which depends on `pycairo`
, retrying

发现是缺失 cairo 底层依赖 +pkg-config 工具,导致 pycairo==1.29.0 编译构建失败,进而引发插件依赖安装失败,多次重试均未解决

4.解决方法

安装插件 bowenliang123/md_exporter 所需的以下依赖项:

  • cmake
  • pkg-config
  • libcairo2-dev
  • libjpeg-dev
  • libgif-dev

    # 进入插件容器终端,安装依赖
    apt-get install -y cmake pkg-config libcairo2-dev libjpeg-dev libgif-dev

如果提示无法定位镜像

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package cmake
E: Unable to locate package pkg-config
E: Unable to locate package libcairo2-dev
E: Unable to locate package libjpeg-dev
E: Unable to locate package libgif-dev
# 1. 先更新软件源索引(关键步骤,解决「无法定位包」的核心)
apt update -y

# 2. 再执行依赖安装,然后再在Web端正常安装即可
apt-get install -y cmake pkg-config libcairo2-dev libjpeg-dev libgif-dev

5.处理结果

成功安装

成功安装