当前位置: 首页 > news >正文

在 Ubuntu 上将 Docker 降级到版本 25.0.5 (二) 降低版本,涉及兼容性问题

 以下有免费的4090云主机提供ubuntu22.04系统的其他入门实践操作

地址:星宇科技 | GPU服务器 高性能云主机 云服务器-登录

相关兑换码星宇社区---4090算力卡免费体验、共享开发社区-CSDN博客

兑换码要是过期了,可以私信我获取最新兑换码!!!

之所以推荐给大家使用,是因为上面的云主机目前是免费使用的,不需要大家再去安装虚拟机,部署虚拟机,环境都搭配好了,非常适合新手入门,减少搭建的时间,把时间都用在实践上。

本指南详细说明了在 Ubuntu(以 22.04 为例)上将已安装的 Docker 降级到版本 25.0.5 的步骤。降级涉及卸载当前版本并安装目标版本,同时尽量保留现有的容器、镜像和配置。适用于通过 Docker 官方存储库安装 Docker 的用户。

先决条件

  • 操作系统:Ubuntu 22.04(Jammy Jellyfish)。其他版本(如 20.04 或 24.04)可能适用,但需验证版本 5:25.0.5-1~ubuntu.22.04~jammy 的可用性。
  • 权限:具有 sudo 权限的用户账户。
  • 网络:稳定的互联网连接。
  • 备份:强烈建议备份 Docker 数据(容器、镜像、卷)以防丢失:
    docker save -o image-backup.tar <image-name>
    sudo tar -czf docker-data-backup.tar.gz /var/lib/docker
    

降级步骤

步骤 1:检查当前 Docker 版本

确认当前安装的 Docker 版本:

docker --version

示例输出:Docker version 26.1.4, build 5650f9b。如果版本高于 25.0.5,则需降级。

步骤 2:停止 Docker 服务

在卸载前停止 Docker 服务以避免冲突:

sudo systemctl stop docker
sudo systemctl stop docker.socket

步骤 3:卸载当前 Docker 版本

卸载 Docker 相关软件包,但保留数据目录(/var/lib/docker):

sudo apt-get remove --purge -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

步骤 4:确保 Docker 存储库可用

如果 Docker 存储库未配置,添加官方存储库:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

步骤 5:检查可用版本

列出可用 Docker 版本以确认 25.0.5 存在:

apt-cache madison docker-ce

查找 5:25.0.5-1~ubuntu.22.04~jammy。若不可用,检查 Docker 存档。

步骤 6:安装 Docker 25.0.5

安装特定版本的 Docker 及其依赖项:

sudo apt-get install -y docker-ce=5:25.0.5-1~ubuntu.22.04~jammy docker-ce-cli=5:25.0.5-1~ubuntu.22.04~jammy containerd.io docker-buildx-plugin docker-compose-plugin

若 containerd.io 版本冲突,查找兼容版本:

apt-cache madison containerd.io
sudo apt-get install -y containerd.io=<compatible-version>

步骤 7:启动并验证 Docker 服务

启动 Docker 服务并检查状态:

sudo systemctl start docker
sudo systemctl enable docker
sudo systemctl status docker

验证版本:

docker --version

预期输出:Docker version 25.0.5, build e2d7e8b

步骤 8:测试 Docker 安装

运行测试镜像以确认正常运行:

sudo docker run hello-world

预期输出包含:Hello from Docker!

步骤 9:恢复非 root 用户访问(可选)

确保用户在 docker 组中:

groups

若无 docker,添加:

sudo usermod -aG docker $USER

注销并重新登录后测试:

docker run hello-world

故障排除

  • 版本不可用:若 5:25.0.5-1~ubuntu.22.04~jammy 不可用,尝试其他版本字符串(如 ~ubuntu.20.04~focal)或手动下载 .deb 包:
    wget <URL-to-deb-file>
    sudo dpkg -i <deb-file>
    
  • 依赖冲突:修复依赖问题:
    sudo apt-get install -f
    
  • 容器不可用:若容器无法运行,重新拉取镜像:
    docker pull <image-name>
    
  • 服务未启动:检查日志:
    journalctl -u docker
    

注意事项

  • 数据保留:卸载不会删除 /var/lib/docker,但降级可能导致兼容性问题,务必备份。
  • 版本兼容性:确保容器和镜像与 25.0.5 兼容。
  • 存储库维护:旧版本可能从存储库移除,需从存档手动安装。

其他资源

  • Docker 官方安装文档
  • Docker Engine 25.0 发行说明
  • DigitalOcean Docker 教程

http://www.dtcms.com/a/293646.html

相关文章:

  • 在离线 Ubuntu 22.04机器上运行 ddkj_portainer-cn 镜像 其他相关操作也可以复刻 docker
  • centos 配置docker
  • java通过com进行pdf转换docx丢失
  • mongodb的备份和还原(精简)
  • LeetCode11~20题解
  • Visual Studio中部署PaddleOCRv5 (借助ncnn框架)
  • 如何Visual Studio 的配置从 Qt-Debug 切换到 x64-Debug
  • ESP32的ADF详解:5. Streams的API
  • 聊聊 Flutter 在 iOS 真机 Debug 运行出现 Timed out *** to update 的问题
  • GEMINUS 和 Move to Understand a 3D Scene
  • Redis的key过期策略
  • 4.3 激活函数的目的
  • LLM 幻觉一般是由于什么产生的,在模型什么部位产生
  • 计算机组成原理——数据的表示和运算2
  • 手机开启16k Page Size
  • J2EE模式---服务定位器模式
  • JavaEE Spring框架的概述与对比无框架下的优势
  • 关于原车一键启动升级手机控车的核心信息及注意事项
  • 第五章第一节 EXTI 外部中断
  • Adobe全系列下载 官方原版补丁
  • 【Spark征服之路-3.8-Spark-SQL核心编程(七)】
  • 2025獬豸杯WP
  • 用Phi-3 Mini微调实现英文到尤达语翻译
  • 软硬件协同仿真和验证的标准接口协议SCE-MI简介
  • 避坑指南:Windows 11中 Docker 数据卷的存放位置
  • vue+element-ui实现主子表
  • Vue3 面试题及详细答案120道(61-75 )
  • 力扣146:LRU缓存
  • 使用阿里云 ESA 边缘函数转发代理 docker registry
  • 利用aruco标定板标定相机