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

指定摘要运行Docker Ubuntu镜像,不同主机apt源差异及安装失败问题

问题分析与解决

核心原因

你遇到的问题是Docker多架构镜像的自动适配导致的:

  • Ubuntu官方Docker镜像是多架构兼容的,你指定的sha256:f9d633ff6640178c2d0525017174a688e2c1aef28f0a0130b26bd5554491f0da是镜像清单哈希,Docker会根据宿主机器的CPU架构,自动拉取对应版本的镜像。
  • amd64(x86_64)架构的镜像默认使用archive.ubuntu.com源,而arm64/ppc64el等非x86架构的镜像则默认使用ports.ubuntu.com/ubuntu-ports源。
  • 400错误大概率是因为该镜像对应的Ubuntu版本已停止官方支持,ports.ubuntu.com上的对应源已被归档,无法正常访问。

验证步骤

先确认两台容器的架构差异:
在两台机器的容器内执行:

dpkg --print-architecture

正常机器应该输出amd64,报错机器会输出arm64或其他非x86架构。

解决办法

办法1:替换失效的源地址

如果需要在非amd64架构上运行,将ports.ubuntu.com替换为归档源:

sed -i 's/ports.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list

然后重新执行:

apt-get update && apt-get install curl -y

办法2:强制拉取amd64架构镜像

如果宿主机器支持运行amd64容器(比如带虚拟化的arm64机器),可以强制指定架构拉取镜像:

docker run -it --platform linux/amd64 ubuntu@sha256:f9d633ff6640178c2d0525017174a688e2c1aef28f0a0130b26bd5554491f0da /bin/bash

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 22:33:14