ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

Docker 多阶段复制 uv 安装工具失败的路径绑定问题

Docker 多阶段复制 uv 安装工具失败的路径绑定问题

问题现象

用uv管理一个 Python 命令行工具,pyproject.toml里声明了入口:

[build-system] requires = ["uv_build >= 0.9.9, <0.10.0"] build-backend = "uv_build" [project.scripts] sandworm = "sandworm.cli:main"

想把工具打进镜像,最终阶段基于gcc镜像(这是个构建自动化工具,需要编译环境)。多阶段构建写成这样:

FROM ghcr.io/astral-sh/uv:python3.10-trixie AS builder COPY . /app RUN cd /app && \ uv tool install . FROM gcc:15-trixie COPY --from=builder /usr/local/lib/python3.10 /usr/local/lib/python3.10 COPY --from=builder /usr/local/lib/libpython* /usr/local/lib COPY --from=builder /usr/local/bin/python3* /usr/local/bin COPY --from=builder /usr/local/bin/sandworm /usr/
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进