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

Docker Alpine构建ARM镜像报python包不存在及sqlite3编译失败如何解决

问题根因
  • 第一个报错是因为你使用的Alpine 3.14及以上版本已经移除了名为python的软件包(原对应Python 2.x,已停止官方维护),软件源中仅保留python3包,直接安装python会提示找不到包。
  • 第二个报错是因为sqlite3的原生模块构建脚本默认调用python命令执行构建逻辑,安装python3后系统中只有python3命令,没有python别名,导致构建时找不到可执行文件。
修复方案

修改Dockerfile中构建依赖安装的RUN指令,安装python3的同时创建软链接将python指向python3即可,修改后的对应代码段如下:

RUN apk update \
    && apk --no-cache --virtual build-dependencies add python3 make g++ \
    && ln -s /usr/bin/python3 /usr/bin/python \
    && npm install --production

其余Dockerfile配置保持原有内容不变即可正常完成构建。
补充说明:创建的软链接仅存在于构建阶段,后续执行apk del build-dependencies时会将python3连带软链接一起删除,最终运行镜像不会残留构建依赖,不会额外增加镜像体积。
如果不想创建系统软链接,也可以通过npm配置指定Python路径,效果一致:

RUN apk update \
    && apk --no-cache --virtual build-dependencies add python3 make g++ \
    && npm config set python /usr/bin/python3 \
    && npm install --production

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 10:15:05