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

Docker中RUN指令安装tidyverse失败,提示非零退出状态

解决Docker中安装tidyverse依赖失败的问题

问题原因

报错中的systemfonts、textshaping、ragg均为编译型R包,依赖底层系统的字体/图形处理库,Docker基础镜像默认未预装这些库,导致R包编译安装失败,进而无法完成tidyverse的安装。

解决方案

在安装R包前,先通过系统包管理器安装所需的底层依赖库,再执行R包安装命令。

针对Debian/Ubuntu系基础镜像(如rocker/r-ver、debian:latest)

在Dockerfile中添加系统依赖安装步骤:

# 更新包列表并安装依赖
RUN apt-get update && apt-get install -y --no-install-recommends \
    fontconfig \
    libfreetype6-dev \
    libpng-dev \
    libharfbuzz-dev \
    libfribidi-dev \
    && rm -rf /var/lib/apt/lists/*

完整Dockerfile示例

FROM rocker/r-ver:4.3.1

# 安装系统依赖
RUN apt-get update && apt-get install -y --no-install-recommends \
    fontconfig \
    libfreetype6-dev \
    libpng-dev \
    libharfbuzz-dev \
    libfribidi-dev \
    && rm -rf /var/lib/apt/lists/*

# 安装tidyverse
RUN R -e "install.packages(c('tidyverse'), repos='http://cran.rstudio.com/')"

针对Alpine系基础镜像

若使用Alpine作为基础镜像,替换为apk命令安装依赖:

RUN apk add --no-cache \
    fontconfig-dev \
    freetype-dev \
    libpng-dev \
    harfbuzz-dev \
    fribidi-dev

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 18:32:16