加油
努力

阿里云ECS Ubuntu镜像怎么配置Docker环境?

在阿里云 ECS(Ubuntu 镜像)上配置 Docker 环境,通常有两种主流方式:官方推荐安装(通过 apt 包管理器)和 快速脚本安装。考虑到生产环境的稳定性,推荐使用官方提供的 docker-ce 社区版。

以下是完整的操作步骤:

1. 登录并更新系统

首先通过 SSH 登录到你的 ECS 实例,并更新软件源列表,确保获取最新的包信息:

sudo apt update
sudo apt upgrade -y

2. 安装依赖工具

Docker 的安装需要一些基础依赖包(如 ca-certificates, curl, gnupg 等),请先安装它们:

sudo apt install -y ca-certificates curl gnupg lsb-release

3. 添加 Docker 官方 GPG 密钥与仓库

为了从官方源下载最新且安全的版本,需要先添加 Docker 的官方密钥和软件源:

# 创建目录用于存放密钥
sudo mkdir -p /etc/apt/keyrings

# 添加 Docker 官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

# 设置权限
sudo chmod a+r /etc/apt/keyrings/docker.gpg

# 添加 Docker 软件源(根据 Ubuntu 版本自动识别架构)
echo 
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu 
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

4. 安装 Docker Engine

再次更新软件源,然后安装 Docker CE、CLI 工具和容器运行时:

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

注意containerd.io 是 Docker 底层的核心组件,必须安装;docker-compose-plugin 允许你使用 docker compose 命令运行多容器应用。

5. 启动服务并设置开机自启

安装完成后,启动 Docker 服务并设置为开机自动启动:

sudo systemctl start docker
sudo systemctl enable docker

验证安装是否成功:

sudo docker run hello-world

如果看到欢迎信息,说明安装成功。

6. (可选但推荐)将当前用户加入 docker 组

默认情况下,只有 root 用户才能运行 Docker 命令。为了避免每次都要加 sudo,可以将当前用户加入 docker 用户组:

# 将当前用户加入 docker 组
sudo usermod -aG docker $USER

# 立即生效(无需重新登录,但部分终端可能需要重新执行或退出重登)
newgrp docker

7. 阿里云特定优化(提速下载)

由于国内网络原因,拉取 Docker Hub 镜像可能较慢。建议在 /etc/docker/daemon.json 中配置阿里云镜像提速器。

  1. 登录阿里云控制台,进入你的 ECS 实例详情页,找到“镜像提速器”地址(格式通常为 https://<你的唯一标识>.mirror.aliyuncs.com)。
  2. 编辑配置文件:
    sudo mkdir -p /etc/docker
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
     "registry-mirrors": ["https://<你的提速器地址>"]
    }
    EOF
  3. 重启 Docker 服务使配置生效:
    sudo systemctl daemon-reload
    sudo systemctl restart docker

8. 安全加固建议

虽然 Docker 已经可以运行,但在公网环境下,建议检查防火墙规则:

  • 阿里云安全组:确保只开放了必要的端口(如 80, 443, 22),不要直接暴露 2375 或 2376 端口
  • Docker 权限:避免以 root 身份运行容器,尽量遵循最小权限原则。

至此,你的 Ubuntu ECS 上的 Docker 环境已配置完成,可以开始部署容器化应用了。

云服务器