阿里云ECS(CentOS/Alibaba Cloud Linux)安装最新 Docker 方法

最近(6月份)我发现 docker 官方无法正常访问,docker pull 命令也执行失败,用 TZ 也一样😔。

以下步骤适用于 CentOS 7/8或Alibaba Cloud Linux 系统。

1. 更新系统包

首先,确保您的ECS实例系统软件包是最新的。

bash 复制代码
sudo yum update -y

2. 安装必要的依赖

安装一些必要的系统工具,包括yum-utils,它将帮助我们更方便地管理仓库。

bash 复制代码
sudo yum install -y yum-utils

3. 设置Docker仓库

添加Docker官方的YUM仓库。这会根据您的系统自动选择合适的Docker版本。

bash 复制代码
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

上述命令不出意外会报错:

shell 复制代码
Curl error (28): Timeout was reached for https://download.docker.com/linux/centos/docker-ce.repo [Connection timed out after 30000 milliseconds]
Error: Configuration of repo failed

那么可以尝试使用以下命令(Alibaba Cloud Linux 实测通过):

bash 复制代码
sudo tee /etc/yum.repos.d/docker-ce.repo <<-'EOF'
[docker-ce-stable]
name=Docker CE Stable - \$basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
EOF

4. 安装Docker CE

接下来,安装Docker Community Edition (CE) 的最新版本。

bash 复制代码
# docker-ce-cli 可选
sudo yum install -y docker-ce docker-ce-cli

耐心等待命令执行完成😄。

5. 启动并设置Docker服务

启动Docker服务,并设置开机启动。

bash 复制代码
sudo systemctl start docker
sudo systemctl enable docker

6. 配置镜像加速器(可选,但推荐)

否则无法正常执行 pull 命令

为保证国内环境下镜像下载速度(如上图),可以配置阿里云的镜像加速器。

编辑Docker配置文件:

bash 复制代码
sudo vi /etc/docker/daemon.json

如果文件不存在,创建一个并输入以下内容:

json 复制代码
{
  "registry-mirrors": ["https://<your_accelerator>.mirror.aliyuncs.com"]
}

替换<your_accelerator>为您的加速器地址,可以从阿里云控制台获取。

保存并退出编辑器后,重启Docker服务:

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl restart docker

7. 验证安装

最后,验证Docker是否正确安装并获取其版本信息。

bash 复制代码
# docker -v
Docker version 26.1.4, build 5650f9b

以上步骤应该能帮助您在阿里云ECS实例上成功安装最新版本的Docker。如果遇到任何问题,建议查阅Docker官方文档或阿里云的帮助中心。

相关推荐
H_oRIZoN_1 小时前
Linux入门DAY41(51 单片机 串口与通信协议)
linux·运维·单片机
GeW2 小时前
RHCE备考别瞎学!按这个计划走,30天提高通过率,快速拿证
linux
Escalating_xu3 小时前
【System V 信号量】从 P/V 原语到 Builder 封装:写出可控、可清理的进程互斥组件
java·linux·开发语言·jvm
今天AI了吗3 小时前
什么是 AI Agent?它与直接调用大模型 API 有何区别
java·网络·人工智能·架构·java-ee
傲世仙尊3 小时前
System V 进程间通信详解:共享内存、消息队列与信号量(CSDN博客)
linux·开发语言·c++
码农小韩3 小时前
Linux应用开发(六)——进程间通信
linux·linux驱动·嵌入式软件开发·嵌入式操作系统·linux应用
小祺先生4 小时前
mt7921 debian系统 如何安装驱动
运维·网络·debian
笨笨饿4 小时前
#138_解决Codex要五次回复的问题
linux·stm32·单片机·嵌入式硬件·mcu·物联网·嵌入式实时数据库
m0_459872924 小时前
Linux 系统基础
linux·运维·服务器
吴声子夜歌4 小时前
Shell编程——数组
linux·运维·shell