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

Ubuntu构建Docker镜像安装apache web server时出现Failed to fetch错误

问题原因

该报错是因为你使用的Ubuntu基础镜像中缓存的APT软件源索引已过期,索引内记录的apache2、tzdata、ca-certificates等软件包的旧版本下载链接已经被官方源移除,因此请求返回404错误。你之前执行update操作后依然报错,大概率是Docker缓存了旧的镜像层导致的。

解决方案

  • 调整Dockerfile的指令写法,将apt update和apt install合并在同一个RUN指令中,避免Docker复用旧的update缓存层,同时可以增加清理步骤减小镜像体积:
# 正确写法示例
RUN apt-get update && \
    apt-get install -y apache2 && \
    rm -rf /var/lib/apt/lists/*
  • 构建镜像时添加--no-cache参数,强制跳过所有镜像缓存,执行完整构建流程:
docker build --no-cache -t 你的镜像名称 .
  • 如果官方源访问不稳定,可在执行update前先替换为国内镜像源,以下是替换为清华源的示例(适配Ubuntu 20.04版本):
RUN sed -i "s@http://.*archive.ubuntu.com@http://mirrors.tuna.tsinghua.edu.cn@g" /etc/apt/sources.list && \
    sed -i "s@http://.*security.ubuntu.com@http://mirrors.tuna.tsinghua.edu.cn@g" /etc/apt/sources.list && \
    apt-get update && \
    apt-get install -y apache2 && \
    rm -rf /var/lib/apt/lists/*

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 23:15:02