Docker 学习之路-Linux安装指定版本docker

发布时间:2026/6/5 9:24:58
Docker 学习之路-Linux安装指定版本docker
前言 有同事问我虚拟机怎么安装不了docker实际上不同的系统centos/ubantu ..安装不一定是相同的。这里指定docker版本Docker 26.1.3apt 是 Ubuntu/Debian 系列的包管理工具:# 1. 更新系统并安装依赖apt update apt upgrade -yapt install ca-certificates curl gnupg lsb-release -y# 2. 添加 Docker 官方 GPG 密钥确保下载源可信mkdir -p /etc/apt/keyringscurl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg# 3. 添加 Docker 官方软件源echo deb [arch$(dpkg --print-architecture) signed-by/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable | tee /etc/apt/sources.list.d/docker.list /dev/null# 4. 更新源并安装指定版本26.1.3的 Docker 组件apt update# 安装 docker-ce、docker-ce-cli、containerd.io 均指定 26.1.3 版本apt install -y \docker-ce5:26.1.3-1~ubuntu.$(lsb_release -rs)~$(lsb_release -cs) \docker-ce-cli5:26.1.3-1~ubuntu.$(lsb_release -rs)~$(lsb_release -cs) \containerd.io1.6.28-1 \docker-compose-plugin# 5. 锁定版本防止后续 apt upgrade 自动升级 Dockerapt-mark hold docker-ce docker-ce-cli containerd.ioCentOS9: 步骤 1先卸载当前服务器上的所有 Docker 残留(如果有)# 卸载旧版本yum remove -y docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine \docker-ce \docker-ce-cli \containerd.io# 删除所有残留配置rm -rf /var/lib/docker /etc/docker /root/.docker 步骤 2配置阿里云 Docker Yum 源yum install -y yum-utils## 使用的是阿里云镜像yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.reposed -i sdownload.docker.commirrors.aliyun.com/docker-ce /etc/yum.repos.d/docker-ce.repo#清理缓存yum makecache 步骤 3查看可用的 Docker 版本确认 26.1.3 存在yum list docker-ce --showduplicates | grep 26.1.3你会看到类似这样的结果CentOS 7 示例plaintextdocker-ce.x86_64 3:26.1.3-1.el7 docker-ce-stable 步骤 4安装指定版本和另一台服务器保持一致##CentOS 7 系统yum install -y docker-ce-3:26.1.3-1.el7 \docker-ce-cli-3:26.1.3-1.el7 \containerd.io##CentOS 8/9 系统yum install -y docker-ce-3:26.1.3-1.el9 \docker-ce-cli-3:26.1.3-1.el9 \containerd.io可能遇到的坑yum list docker-ce --showduplicates | grep 26.1.3 yum install -y docker-ce-3:26.1.3-1.el9 \ docker-ce-cli-3:26.1.3-1.el9 \ containerd.io直接执行盲目执行结果如下问题原因docker-ce-cli的版本号写法不能直接照搬docker-ce的带 epoch 前缀3:yum对两个包的版本字段识别规则不一样所以提示找不到包。已经确认源里存在docker-ce.x86_64 3:26.1.3-1.el9只需要修正安装命令。正确安装命令CentOS Stream9bash 运行yum install -y \ docker-ce-3:26.1.3-1.el9 \ docker-ce-cli-26.1.3-1.el9 \ containerd.io要点docker-ce-cli 去掉版本前面的3:只写26.1.3-1.el9备选方案先查 cli 完整版本如果上面命令仍报错先查询 cli 可用版本再安装bash运行# 查看docker-ce-cli所有版本 yum list docker-ce-cli --showduplicates | grep 26.1.3 # 复制查出的完整版本号替换安装补充说明3:是 RPM 的 Epoch 字段只有docker-ce包带这个前缀docker-ce-cli无 Epoch 编号是安装报错的核心containerd.io不指定版本会自动安装匹配 26.1.3 的适配版本无需额外写版本号安装完成校验docker --version输出版本即成功检查当前系统版本 cat /etc/os-release验证版本 docker info其他注意事项可以留言备注