甲骨文云 ARM 实例本质是标准的 Linux 服务器,支持 Ubuntu 和 Oracle Linux 两种主流系统。安装 Docker 24.0 版本的核心在于通过官方仓库指定版本号,避免默认安装最新版导致环境不一致。
先说结论:只要操作系统是标准的 Ubuntu 或 Oracle Linux,即可通过 Docker 官方源指定版本安装,无需特殊脚本。
- 适合:Oracle Cloud Ampere A1 计算实例(Ubuntu / Oracle Linux)
- 先看:操作系统版本是否受 Docker 官方支持
- 建议:安装后锁定版本防止自动升级
安装前检查
确认操作系统类型及架构,确保为 ARM64 环境:
uname -m
cat /etc/os-release确保架构显示为 aarch64 或 arm64。
场景一:Ubuntu 20.04/22.04 系统
1. 清理旧版本
如果之前安装过 docker.io 或旧版 docker-ce,建议先卸载,避免冲突。
sudo apt-get remove docker docker-engine docker.io containerd runc2. 配置官方源
务必使用 Docker 官方源,操作系统自带源里的 Docker 版本通常较旧。
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg `--dearmor` -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg `--print-architecture`) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo \"$VERSION_CODENAME\") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update3. 查询并安装指定版本
在安装前,必须确认仓库里是否有 24.0 的具体版本字符串。
apt-cache madison docker-ce | grep 24.0复制第一列完整的版本字符串,例如 5:24.0.0-1~ubuntu.22.04~jammy,然后执行:
sudo apt-get install -y docker-ce=5:24.0.0-1~ubuntu.22.04~jammy docker-ce-cli=5:24.0.0-1~ubuntu.22.04~jammy containerd.io注意:版本号需替换为 apt-cache 查询到的实际字符串。
场景二:Oracle Linux 8/9 系统
甲骨文云默认系统多为 Oracle Linux,需使用 dnf 包管理器。Docker 官方建议 Oracle Linux 兼容使用 CentOS 仓库。
1. 清理与配置源
sudo dnf remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
sudo dnf install -y dnf-utils
sudo dnf config-manager `--add-repo` https://download.docker.com/linux/centos/docker-ce.repo2. 查询并安装
dnf list docker-ce `--showduplicates` | sort -r找到 24.0 系列版本后安装(示例版本,请以实际查询为准):
sudo dnf install -y docker-ce-24.0.0 docker-ce-cli-24.0.0 containerd.io启动与验证
安装完成后启动服务并验证:
sudo systemctl enable `--now` docker
docker `--version`
docker info确认输出中包含 24.0.x 字样,且 Server OS/Arch 显示为 linux/arm64。
常见坑与排查
1. 命令复制错误(高危)
部分教程代码块中可能包含多余的反引号(如 `--dearmor`),直接复制会导致 syntax error。执行前请检查命令中是否包含非法字符,确保参数前无反引号。
2. 架构兼容性
ARM 实例无法直接运行 x86 镜像。拉取镜像前确认支持 arm64 架构,否则容器无法启动。
3. 权限问题
普通用户执行 docker 命令需要加入 docker 用户组:
sudo usermod -aG docker $USER
newgrp docker4. 版本锁定(可选)
防止执行 update 时自动升级。
# Ubuntu
sudo apt-mark hold docker-ce docker-ce-cli containerd.io
# Oracle Linux
sudo dnf install -y yum-plugin-versionlock
sudo dnf versionlock add docker-ce参考来源
- Docker 官方安装文档:https://docs.docker.com/engine/install/
- Docker 版本发布说明:https://docs.docker.com/engine/release-notes/