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

在Docker ubi-minimal镜像中用microdnf安装shadow-utils失败求助

问题

构建Dockerfile时触发如下报错:

The command '/bin/sh -c microdnf -y install shadow-utils' returned a non-zero code: 1 Execution failed for task

对应的Dockerfile代码:

FROM docker.xxx.com/ubi8/ubi-minimal

ARG DISTRIB_DIRECTORY

LABEL Team="xxx"

COPY  ${DISTRIB_DIRECTORY} /usr/app/


RUN rm -fr /etc/yum.repos.d/* && curl xxx.net/scripts/add-ubi8-repo.sh | sh
RUN microdnf -y install shadow-utils

RUN    microdnf -y install --nodocs java-11-openjdk-headless tzdata-java && microdnf clean all
RUN    groupadd --gid 1001 mygroup
RUN    useradd --uid 1001 --gid mygroup --shell /bin/bash --home-dir /usr/app --no-create-home myuser
RUN    chown -R myuser:mygroup /usr/app
RUN    chmod -R u+rwx /usr/app
USER myuser

EXPOSE 8080
ENTRYPOINT ["/usr/app/bin/docker-entrypoint.sh"]
CMD ["xxx.jar"]

删除RUN microdnf -y install shadow-utils行后,后续的microdnf安装命令仍报相同错误。

报错原因

核心问题是自定义仓库配置步骤失效,导致microdnf找不到可用软件源:

  1. 先执行rm -fr /etc/yum.repos.d/*清空了所有默认仓库配置
  2. 随后通过curl xxx.net/scripts/add-ubi8-repo.sh | sh尝试添加自定义仓库,但该脚本大概率执行失败(比如网络无法访问目标域名、脚本文件不存在、脚本执行逻辑出错)
  3. 此时系统没有任何可用的软件仓库,所有microdnf安装命令都会因无法定位安装包而返回非零错误码
解决方法

可以从以下几个方向排查修复:

  • 验证自定义仓库脚本可用性:
    1. 在本地终端执行curl xxx.net/scripts/add-ubi8-repo.sh,确认能正常获取脚本内容
    2. 手动运行脚本内容,检查是否能在/etc/yum.repos.d/目录下生成有效的repo配置文件
  • 临时用默认仓库调试:
    注释掉rm -fr /etc/yum.repos.d/* && curl xxx.net/scripts/add-ubi8-repo.sh | sh这一行,直接用ubi8-minimal自带的仓库执行microdnf安装。如果能成功,说明自定义仓库脚本存在问题
  • 检查网络连通性:
    构建时确保容器能访问xxx.net,可以在Dockerfile中临时添加RUN ping -c 3 xxx.net命令验证网络是否通畅
  • 合并命令并增加错误捕获:
    将仓库替换和安装命令合并,同时给curl加上-f参数(请求失败时直接返回非零码终止构建),方便快速定位问题:
    RUN rm -fr /etc/yum.repos.d/* \
        && curl -f xxx.net/scripts/add-ubi8-repo.sh | sh \
        && microdnf -y install shadow-utils java-11-openjdk-headless tzdata-java \
        && microdnf clean all
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 02:43:24