在 CentOS 上升级 Docker(Docker Engine) 版本,通常有两种场景:
下面以 CentOS 7 / 8 为例说明。
docker version
# 或
rpm -qa | grep docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
⚠️ 不会删除镜像和容器
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
yum list docker-ce --showduplicates | sort -r
sudo yum update docker-ce docker-ce-cli containerd.io
sudo yum install docker-ce-<VERSION> docker-ce-cli-<VERSION> containerd.io
sudo systemctl restart docker
sudo systemctl enable docker
docker version
CentOS 8 官方已停止维护,建议:
dnf示例(CentOS 8 + dnf):
sudo dnf update docker-ce docker-ce-cli containerd.io
yum install --downloadonly --downloaddir=./docker_rpm \
docker-ce docker-ce-cli containerd.io
rpm -Uvh *.rpm
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
✅ 容器和镜像默认保留
✅ 生产环境建议先备份
✅ 大版本升级(如 19 → 24)注意 API 变更
如果你能告诉我:
我可以给你精确升级命令。