温馨提示×

centos中docker如何升级

小樊
58
2025-09-17 16:53:50
栏目: 智能运维

CentOS中Docker升级详细步骤

一、升级前准备

  1. 备份重要数据
    升级前务必备份Docker容器、镜像和卷等关键数据,避免操作失误导致数据丢失。常用命令:

    • 备份镜像:docker save -o /path/to/backup/image.tar imagename
    • 备份容器:docker export -o /path/to/backup/container.tar containername
    • 备份卷:docker cp containername:/path/to/data /local/path/to/backup
  2. 检查当前Docker版本
    运行以下命令确认当前Docker版本,明确升级需求:

    docker --version
    
  3. 停止Docker服务
    升级前停止Docker服务,确保操作安全:

    sudo systemctl stop docker
    

二、卸载旧版本Docker

彻底卸载旧版本Docker及相关组件,避免残留文件冲突:

sudo yum remove -y docker \
    docker-client \
    docker-client-latest \
    docker-common \
    docker-latest \
    docker-latest-logrotate \
    docker-logrotate \
    docker-engine

可选:删除旧版Docker数据目录(谨慎操作,删除后将永久丢失数据):

sudo rm -rf /var/lib/docker

三、添加Docker官方YUM仓库

通过官方仓库安装最新稳定版Docker,确保版本兼容性和安全性:

# 安装yum-utils工具(用于管理仓库)
sudo yum install -y yum-utils

# 添加Docker官方仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

四、安装最新版本Docker

  1. 更新YUM包索引

    sudo yum update -y
    
  2. 安装Docker CE及依赖
    安装最新版本的Docker社区版(CE)、CLI工具和containerd容器运行时:

    sudo yum install -y docker-ce docker-ce-cli containerd.io
    

    :若需安装特定版本(如生产环境推荐),可先列出可用版本:

    yum list docker-ce --showduplicates | sort -r
    

    然后选择指定版本安装(以docker-ce-25.0.0为例):

    sudo yum install -y docker-ce-25.0.0 docker-ce-cli-25.0.0 containerd.io
    

五、启动Docker并设置开机自启

  1. 启动Docker服务

    sudo systemctl start docker
    
  2. 设置开机自启

    sudo systemctl enable docker
    

六、验证升级结果

  1. 检查Docker版本
    运行以下命令确认升级成功:

    docker --version
    

    输出应显示最新版本号(如Docker version 25.0.0, build xxxxx)。

  2. 测试Docker功能
    运行测试容器,验证Docker是否正常工作:

    docker run hello-world
    

    若输出`Hello from Docker!',则说明升级成功。

七、常见问题处理

  1. 依赖冲突
    若安装过程中出现依赖错误,可尝试更新系统所有软件包后再重新安装:

    sudo yum update -y && sudo yum install -y docker-ce docker-ce-cli containerd.io
    
  2. 数据恢复
    若升级后出现问题,可通过之前备份的数据恢复镜像、容器或卷:

    • 恢复镜像:docker load -i /path/to/backup/image.tar
    • 恢复容器:cat /path/to/backup/container.tar | docker import - containername
    • 恢复卷:将备份数据复制回原卷路径。

额外说明

  • CentOS版本兼容性
    • CentOS 7:支持Docker CE 18.09及以上版本;
    • CentOS 8:支持Docker CE 19.03及以上版本。
  • Docker Compose升级
    若使用Docker Compose管理多容器应用,可单独升级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
    

0