加油
努力

阿里云ECS 2核4G部署Docker需要提前安装哪些依赖?

在阿里云 ECS(2核4G,主流 Linux 发行版如 Alibaba Cloud Linux 3 / CentOS Stream 8 / Ubuntu 22.04)上部署 Docker,官方推荐方式是直接安装 Docker Engine(社区版或 CE),无需手动安装大量底层依赖——因为现代 Docker 安装包(如通过 apt/dnf/yum 或官方 repo)会自动解决并安装所需依赖。

不过,为确保顺利安装和运行,以下是需要提前确认或安装的关键项(按优先级排序):


1. 操作系统内核要求(必须满足)
Docker 运行依赖较新的 Linux 内核特性(cgroups、namespaces、overlayfs 等):

  • Alibaba Cloud Linux 3 / CentOS Stream 8+ / Ubuntu 22.04+:✅ 默认满足(内核 ≥ 4.18,已启用 cgroup v2 和 overlay2 支持)。
  • ⚠️ 若使用 CentOS 7(EOL)或旧版 Ubuntu 20.04 以下:需升级内核(不推荐,建议换用受支持系统)。

✅ 验证命令(执行后应有输出且无报错):

uname -r                    # 应 ≥ 4.18(如 5.10.0-xxx-alibaba)
lsmod | grep overlay        # 应有输出(overlay 模块已加载)
cat /proc/filesystems | grep overlay  # 应显示 overlay

2. 基础系统工具(通常已预装,但建议检查)

# 确保以下工具存在(Docker 安装脚本及后续操作需要)
which curl wget ca-certificates gnupg2 software-properties-common  # Ubuntu/Debian
which curl wget yum-utils dnf-plugins-core                          # RHEL/CentOS/Alibaba Cloud Linux
  • ❌ 若缺失(极少见),安装:
    • Ubuntu/Debian
      sudo apt update && sudo apt install -y curl wget gnupg2 ca-certificates
    • Alibaba Cloud Linux 3 / CentOS Stream 8+
      sudo dnf install -y curl wget yum-utils dnf-plugins-core

3. 卸载旧版容器工具(避免冲突)
阿里云部分镜像可能预装 podman 或旧版 docker(如 docker-io):

# 推荐先清理(尤其 CentOS/Alibaba Cloud Linux)
sudo dnf remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine podman runc
# Ubuntu:
sudo apt remove -y docker docker.io docker-docs docker-compose docker-compose-v2 podman

4. 配置国内镜像源(强烈推荐,提速安装 & 后续拉取镜像)

  • Docker 官方仓库镜像源(安装 Docker 时用)

    # Alibaba Cloud Linux 3 / CentOS Stream 8+
    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
    # Ubuntu 22.04
    echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  • Docker daemon 镜像提速器(安装后配置,大幅提升 pull 速度)

    sudo mkdir -p /etc/docker
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
    "registry-mirrors": ["https://<your-id>.mirror.aliyuncs.com"],
    "exec-opts": ["native.cgroupdriver=systemd"]
    }
    EOF
    sudo systemctl daemon-reload
    sudo systemctl restart docker

    🔑 替换 <your-id> 为你的 阿里云容器镜像服务控制台 中的专属提速器地址(免费,推荐!)


5. (可选但推荐)配置 systemd cgroup 驱动(兼容 Kubernetes 场景)
Docker 默认使用 cgroupfs,但若未来对接 K8s(如阿里云 ACK 或自建),建议统一为 systemd

  • 上面 daemon.json 中已包含 "exec-opts": ["native.cgroupdriver=systemd"],配合 systemd 作为 init 系统(ECS 默认就是)即可。

不需要手动安装的常见“误解依赖” 名称 说明
lxc Docker 18.09+ 已弃用 LXC,完全基于 containerd + runc,无需安装。
aufs / btrfs 阿里云 ECS 推荐 overlay2(默认且最优),无需额外文件系统模块。
iptables / nftables 系统自带,Docker 自动管理规则;仅需确保未被禁用(sudo systemctl enable iptables 非必需)。

最终验证步骤(安装后必做)

# 1. 安装 Docker(以 Alibaba Cloud Linux 3 / CentOS Stream 8 为例)
sudo dnf install -y docker-ce docker-ce-cli containerd.io

# 2. 启动并设开机自启
sudo systemctl enable docker
sudo systemctl start docker

# 3. 验证
sudo docker run hello-world  # 成功输出即表示 OK
sudo docker info | grep "Cgroup Driver|Storage Driver"  # 应显示 systemd + overlay2

📌 总结:你只需做这 3 步(2核4G ECS 完全够用)

  1. ✅ 确认系统为 Alibaba Cloud Linux 3 / CentOS Stream 8+ / Ubuntu 22.04+(内核达标)
  2. ✅ 执行基础工具检查 + 清理旧 Docker + 配置阿里云镜像源(安装 & daemon 提速)
  3. dnf install docker-cesystemctl start dockerdocker run hello-world

💡 提示:阿里云 ECS 控制台提供「Docker 最佳实践」一键部署镜像(搜索“Docker”),或使用 云市场镜像(如“Docker CE 官方镜像”),可跳过手动安装。

如需我为你生成对应系统的完整一键安装脚本(含镜像提速配置),欢迎告诉我你的 ECS 镜像类型(如 Alibaba Cloud Linux 3.2104Ubuntu 22.04 LTS),我可立即提供 👇

云服务器