CentOS 7 国内安装 Docker CE(阿里云源)

CentOS 7 国内安装 Docker CE(阿里云源)

环境:CentOS 7 · x86_64

原因:国内直连 download.docker.com 常超时,改用阿里云 Docker CE 镜像。

提醒: CentOS 7 已于 2024-06 EOL。能迁 AlmaLinux / Rocky Linux 更好;必须继续用再按本文安装。


1. 卸载旧版本(如有)

bash 复制代码
sudo yum remove -y docker \
  docker-client docker-client-latest \
  docker-common docker-latest docker-latest-logrotate \
  docker-logrotate docker-engine \
  docker-ce docker-ce-cli containerd.io

2. 添加阿里云源并安装

bash 复制代码
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

sudo yum-config-manager --add-repo \
  https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 把 repo 里的官方地址换成阿里云(关键)
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' \
  /etc/yum.repos.d/docker-ce.repo

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

指定版本(可选):

bash 复制代码
yum list docker-ce --showduplicates | sort -r
sudo yum install -y docker-ce-24.0.9 docker-ce-cli-24.0.9 containerd.io

参考:阿里云 Docker CE 镜像


3. 启动并验证

bash 复制代码
sudo systemctl enable --now docker
sudo docker version
sudo docker run --rm hello-world

出现 Hello from Docker! 即成功。

免 sudo(可选,重新登录后生效):

bash 复制代码
sudo usermod -aG docker $USER

4. 配置镜像加速(强烈建议)

Docker Hub 国内拉取易失败。阿里云 ECS 可在控制台:容器镜像服务 ACR → 镜像工具 → 镜像加速器 拿到专属地址(公共加速域名可能已失效)。

bash 复制代码
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<'EOF'
{
  "registry-mirrors": [
    "https://你的加速地址.mirror.aliyuncs.com"
  ],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m",
    "max-file": "3"
  }
}
EOF

sudo systemctl daemon-reload
sudo systemctl restart docker
sudo docker info | grep -A5 "Registry Mirrors"

5. 一键安装(最小步骤)

bash 复制代码
sudo yum remove -y docker docker-common docker-engine docker-ce docker-ce-cli containerd.io 2>/dev/null
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
sudo yum makecache fast
sudo yum install -y docker-ce docker-ce-cli containerd.io
sudo systemctl enable --now docker
sudo docker run --rm hello-world

6. 常见问题

现象 处理
Cannot find a valid baseurl / yum 超时 先换 CentOS Base 源(见下)
containerd.io 冲突 卸掉旧 docker / containerd 后再装
hello-world 拉取失败 配好 registry-mirrors,或改用 ACR
内核过旧 uname -r,CentOS 7 默认 ≥ 3.10 一般即可

Base 源异常时:

bash 复制代码
sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo \
  https://mirrors.aliyun.com/repo/Centos-7.repo
sudo yum clean all && sudo yum makecache

官方源停更后,部分镜像站会切到 vault。上面失效时,改用对应 vault 归档源即可。


速查: systemctl status/start/stop/restart docker · docker version · docker info · docker images · docker ps -a

相关推荐
nxb5561 天前
haproxy算法,ip透传,自定义haproxy错误页面
运维·服务器
AKAMAI1 天前
你的源服务器可能是你做出的最昂贵决定
运维·人工智能·云计算
Dxy12393102161 天前
Linux 编译安装 Python 3.12.10(多版本共存,不破坏系统Python)
linux·运维·python
技术深耕者1 天前
AI Agent从演示到生产:企业进入“自动化层”时代
运维·人工智能·自动化
w67820071 天前
Prisma不能优雅的支持DTO,试试Vona ORM吧
linux·运维·ubuntu
APItesterCris1 天前
Open Claw 实战教程:5 分钟搭建京东商品自动化监控与数据分析系统
大数据·运维·数据库·数据仓库·自动化
杨某不才1 天前
如何能让Linux服务器对shell 终端 + sftp 文件传输长期保活
linux·运维·服务器
杨云龙UP1 天前
生产环境Oracle表空间扩容实战:使用Toad for Oracle图形界面新增Datafile(ASM+OMF)
linux·运维·数据库·oracle·表空间·asm 存储管理·toad
三言老师1 天前
文本工具组合统计服务器日志数据
linux·运维·服务器
m0_743697591 天前
DNS服务器
运维·服务器