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

GitLab Pipeline构建Dockerfile时出现Unable to locate package curl等报错

解决GitLab流水线构建Ubuntu镜像时“无法定位软件包”的问题

以下是几个直接有效的解决思路:

  • 先刷新软件源索引
    Ubuntu官方基础镜像的软件源索引默认是过时的,必须先执行apt update刷新索引,再执行安装命令。建议把更新和安装合并为一条命令,避免缓存冲突:

    apt update && apt install -y curl git wget unzip
    

    如果更新速度过慢,可以替换为国内源(以Ubuntu 22.04为例):

    echo "deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
    deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
    deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
    deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse" > /etc/apt/sources.list
    

    替换后再执行更新和安装命令。

  • 明确指定基础镜像版本
    不要用ubuntu:latest这类模糊标签,它可能指向已停止维护的旧版本(比如16.04),这类版本的软件源已被移除,自然找不到包。直接指定仍在支持的版本:

    FROM ubuntu:22.04
    
  • 清理旧缓存
    GitLab流水线可能缓存了过期的apt索引数据,导致新的更新不生效。可以在安装前先清理缓存:

    apt clean && apt update && apt install -y curl git wget unzip
    
  • 核对软件包名称
    虽然curl、git、wget、unzip这些包名在主流Ubuntu版本里都正确,但如果是特殊版本,可先通过apt search <包名>确认包是否存在,再执行安装。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 22:54:20