文章

Ubuntu 22.04 LTS 进行docker降级安装老板本

在Ubuntu 22.04系统中,若您希望将Docker从版本27.3.1降级到24.0.7,同时保留现有的容器和数据,可以按照以下步骤操作。请务必在操作前备份重要数据,以防万一。

步骤 1:备份Docker数据

虽然降级过程不会删除容器,但为了安全起见,建议备份Docker的数据目录。

1
2
sudo systemctl stop docker
sudo cp -r /var/lib/docker /var/lib/docker-backup

步骤 2:卸载当前的Docker版本

卸载Docker软件包,但保留配置文件和数据。

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

步骤 3:设置Docker的APT存储库(如果尚未设置)

确保您的系统已经添加了Docker的官方APT存储库。如果之前已经设置过,可以跳过此步骤。

  1. 安装必要的依赖包:
1
2
3
4
5
6
sudo apt-get update
sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release
  1. 添加Docker的官方GPG密钥:
1
2
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
  1. 设置Docker的APT存储库:
1
2
3
 echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

步骤 4:更新APT包索引

1
sudo apt-get update

步骤 5:查找可用的Docker版本

使用以下命令列出所有可用的Docker版本,确保24.0.7版本在列表中。

1
apt-cache madison docker-ce

您应该会看到类似如下的输出,其中包含所需的版本:

1
2
docker-ce | 5:24.0.7~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
...

步骤 6:安装指定版本的Docker

根据上一步查找到的版本信息,安装Docker 24.0.7。请确保版本号与apt-cache madison docker-ce命令输出的版本完全匹配。

1
sudo apt-get install docker-ce=5:24.0.7~3-0~ubuntu-jammy docker-ce-cli=5:24.0.7~3-0~ubuntu-jammy containerd.io docker-buildx-plugin docker-compose-plugin

注意:

  • 如果提示某些包不可用,可能需要检查存储库配置是否正确,或尝试更新APT缓存。
  • 确保所有相关Docker组件(如docker-ce-cli)都安装为相同的版本,以避免兼容性问题。

步骤 7:锁定Docker版本

为了防止Docker在未来的系统更新中被自动升级,可以锁定当前安装的Docker版本。

1
sudo apt-mark hold docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

步骤 8:启动并验证Docker

  1. 启动Docker服务并设置开机自启:
1
2
sudo systemctl start docker
sudo systemctl enable docker
  1. 验证Docker版本:
1
    docker --version
1
应显示类似以下内容,确认已降级成功:
1
    Docker version 24.0.7, build <commit>
  1. 检查Docker状态:
1
sudo systemctl status docker

确认Docker服务正在运行且没有错误。

步骤 9:验证现有容器

确保您的现有容器仍然存在并且可以正常运行。

1
docker ps -a

您应该能看到之前创建的所有容器。如果有需要,可以尝试启动某个容器以确认其正常运行。

附加说明

  • 回滚计划: 如果在降级过程中遇到问题,可以使用备份的数据目录 /var/lib/docker-backup 还原Docker数据。
1
2
3
4
  sudo systemctl stop docker
  sudo rm -rf /var/lib/docker
  sudo cp -r /var/lib/docker-backup /var/lib/docker
  sudo systemctl start docker
  • 保持系统更新: 虽然锁定了Docker版本,但建议定期检查Docker的安全更新,并在确保兼容性的前提下手动升级。

  • 文档参考: 更多关于Docker安装和管理的信息,您可以参考官方文档:Docker 官方文档

通过以上步骤,您应该能够成功将Docker从27.3.1版本降级到24.0.7,同时保留现有的容器和数据。如有任何问题,请评论探讨!

本文由作者按照 CC BY 4.0 进行授权