centos

CentOS下Docker如何更新

小樊
39
2025-10-11 00:15:57
栏目: 智能运维

CentOS下Docker更新指南

在CentOS系统中更新Docker,需根据系统版本(CentOS 7/8/Stream)和需求选择合适方法。以下是常用且安全的更新步骤及注意事项:

一、更新前准备

  1. 备份重要数据:Docker容器、镜像及卷中的数据需提前备份(如使用docker save导出镜像、docker cp备份容器文件),避免更新过程中数据丢失。
  2. 停止运行中的容器:若容器正在运行,需先停止以确保健壮性:
    sudo docker stop $(sudo docker ps -aq)
    
  3. 检查当前Docker版本:确认当前版本,便于后续验证更新结果:
    docker --version
    

二、推荐方法:使用Yum命令更新(适用于CentOS 8/Stream)

此方法通过Docker官方YUM仓库安装最新稳定版,步骤简洁且易维护:

  1. 更新YUM包索引:同步系统软件包信息:
    sudo yum update -y
    
  2. 安装必要依赖:添加Docker仓库所需的工具及库:
    sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    
  3. 添加Docker官方YUM仓库
    sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    
  4. 安装/更新Docker组件:安装最新版本的Docker CE(社区版)、CLI及containerd.io(容器运行时):
    sudo yum install -y docker-ce docker-ce-cli containerd.io
    
  5. 启动Docker并设置开机自启
    sudo systemctl start docker
    sudo systemctl enable docker
    
  6. 验证更新结果:检查版本是否为新版本:
    docker --version
    # 示例输出:Docker version 24.0.7, build afdd53b
    
  7. 测试Docker功能:运行测试容器确认服务正常:
    sudo docker run hello-world
    

三、备选方法:使用Docker官方脚本(快速自动化)

若需快速完成更新,可使用Docker官方提供的脚本,自动检测系统并安装最新版本:

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

注意:脚本会自动卸载旧版本并安装最新版,执行前仍需完成更新前准备(备份数据、停止容器)。

四、高级方法:手动更新特定组件

若仅需更新部分组件(如仅升级docker-ce),可通过YUM单独操作:

  1. 更新指定组件
    sudo yum update docker-ce -y
    sudo yum update containerd.io -y
    
  2. 重启Docker服务:应用组件更新:
    sudo systemctl restart docker
    

五、常见问题处理

  1. 依赖冲突:若更新时出现依赖错误,可尝试先运行sudo yum update -y更新所有包,再重新执行Docker更新步骤。
  2. CentOS 7兼容性:若使用CentOS 7,需将yum替换为dnf(部分命令需调整),或通过EPEL仓库安装Docker。
  3. Docker Compose更新:若使用Docker Compose,需单独升级:
    sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    sudo chmod +x /usr/local/bin/docker-compose
    docker-compose --version  # 验证版本
    

六、注意事项

通过以上步骤,可安全、高效地更新CentOS系统中的Docker版本,确保容器化环境的稳定性和安全性。

0
看了该问题的人还看了