| 风险点 | 构建历史可见、层内残留、缓存复用带走 |
|---|---|
| 替代方案 | RUN --mount=type=secret,id=xxx |
| 配套 | docker build --secret id=xxx,src=./token 或环境变量 |
示例
示例
# 不推荐:token 会留在构建历史
ARG NPM_TOKEN
RUN echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" > /root/.npmrc
# 推荐:临时挂载 secret,用完即消失
RUN --mount=type=secret,id=npmrc,target=/root/.npmrc npm ci --omit=devsecret 方案需要 BuildKit;构建命令加 --secret id=npmrc,src=./npmrc 提供文件内容。